1/* 2 * Copyright (c) 2024-2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16class Item { 17 public value: int; 18 19 constructor(v: int) 20 { 21 this.value = v; 22 } 23} 24 25function main() { 26 let objectArray: FixedArray<Object> = []; 27 let boolArray: FixedArray<boolean> = [true, false, true]; 28 let intArray: FixedArray<int> = [1, 2, 99, 100]; 29 let doubleArray: FixedArray<number> = [1, -2, 1.2, 9.9]; 30 let stringArray: FixedArray<string> = ["one", "two", "three"]; 31 let classArray: FixedArray<Item> = [new Item(1), new Item(2), new Item(3)]; 32 let unionArray: FixedArray<boolean|number|Item|string> = [true, 9.99, new Item(9), "success"]; 33 34 assertTrue(objectArray instanceof FixedArray<Object>) 35 assertTrue(boolArray instanceof FixedArray<boolean>) 36 assertTrue(intArray instanceof FixedArray<int>) 37 assertTrue(doubleArray instanceof FixedArray<number>) 38 assertTrue(stringArray instanceof FixedArray<string>) 39 assertTrue(classArray instanceof FixedArray<Item>) 40 assertTrue(unionArray instanceof (FixedArray<boolean|number|Item|string>)) 41} 42