1b1994897Sopenharmony_ci/**
2b1994897Sopenharmony_ci * Copyright (c) 2024 Huawei Device Co., Ltd.
3b1994897Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4b1994897Sopenharmony_ci * you may not use this file except in compliance with the License.
5b1994897Sopenharmony_ci * You may obtain a copy of the License at
6b1994897Sopenharmony_ci *
7b1994897Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0
8b1994897Sopenharmony_ci *
9b1994897Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10b1994897Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11b1994897Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12b1994897Sopenharmony_ci * See the License for the specific language governing permissions and
13b1994897Sopenharmony_ci * limitations under the License.
14b1994897Sopenharmony_ci */
15b1994897Sopenharmony_ci
16b1994897Sopenharmony_ciconst enum E {
17b1994897Sopenharmony_ci    A = 1,
18b1994897Sopenharmony_ci    B = -2,
19b1994897Sopenharmony_ci    C = 3
20b1994897Sopenharmony_ci}
21b1994897Sopenharmony_ci
22b1994897Sopenharmony_ciconst enum E1 {
23b1994897Sopenharmony_ci    A = "Hello",
24b1994897Sopenharmony_ci    B = "world"
25b1994897Sopenharmony_ci} 
26b1994897Sopenharmony_ci
27b1994897Sopenharmony_ci@interface Anno {
28b1994897Sopenharmony_ci    a: number
29b1994897Sopenharmony_ci    b: number[] = [13, -10]
30b1994897Sopenharmony_ci    c: string
31b1994897Sopenharmony_ci    d: boolean
32b1994897Sopenharmony_ci    e: E[] = [1, -2, 3]
33b1994897Sopenharmony_ci    f: number[]
34b1994897Sopenharmony_ci    h: E = new Number(10) as number // no initializer
35b1994897Sopenharmony_ci    i: E[][][] = [[new Array<E>(0)]] // no initializer
36b1994897Sopenharmony_ci    j: E1 // no initializer
37b1994897Sopenharmony_ci    k: E1[][][] = [[new Array<E1>(2)]] // no initializer
38b1994897Sopenharmony_ci}
39b1994897Sopenharmony_ci
40b1994897Sopenharmony_ci@#Anno({a: 20, b: [-13, 10], c: "ab", d: true, e: [-1, 2, 3], f: new Array<number>(), g: [[[0]]], h: 10, i: [[new Array<E>(1)]], j: "B", k: [[new Array<E1>(3)]]})
41b1994897Sopenharmony_ciclass A {
42b1994897Sopenharmony_ci    @#Anno({a: -10, b: [1, 2, -3], c: "cde", d: true, e: [1, -2, 3], f: [1], g: [[[0], [1]]], h: -10, i: [[[10], [20]]], j: "B", k: [[["A"], ["B"]]]})
43b1994897Sopenharmony_ci    foo() {}
44b1994897Sopenharmony_ci}
45