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 A1 { 17 private bSource: byte = 0 as byte 18 private sSource: short = 1 as short 19 private iSource: int = 2 as int 20 private lSource: long = 3 as long 21 private fSource: float = 4 as float 22 private cSource: char = 5 as char 23 public blTarget: long = this.bSource 24 public bfTarget: float = this.bSource 25 public bdTarget: double = this.bSource 26 public slTarget: long = this.sSource 27 public sfTarget: float = this.sSource 28 public sdTarget: double = this.sSource 29 public ilTarget: long = this.iSource 30 public ifTarget: float = this.iSource 31 public idTarget: double = this.iSource 32 public lfTarget: float = this.lSource 33 public ldTarget: double = this.lSource 34 public fdTarget: double = this.fSource 35 public clTarget: long = this.cSource 36 public cfTarget: float = this.cSource 37 public cdTarget: double = this.cSource 38} 39 40function main(): void { 41 let a1: A1 = new A1() 42 assertEQ(a1.blTarget, 0) 43 assertEQ(a1.bfTarget, 0.0) 44 assertEQ(a1.bdTarget, 0.0) 45 assertEQ(a1.slTarget, 1) 46 assertEQ(a1.sfTarget, 1.0) 47 assertEQ(a1.sdTarget, 1.0) 48 assertEQ(a1.ilTarget, 2) 49 assertEQ(a1.ifTarget, 2.0) 50 assertEQ(a1.idTarget, 2) 51 assertEQ(a1.lfTarget, 3.0) 52 assertEQ(a1.ldTarget, 3.0) 53 assertEQ(a1.fdTarget, 4.0) 54 assertEQ(a1.clTarget, 5) 55 assertEQ(a1.cfTarget, 5.0) 56 assertEQ(a1.cdTarget, 5.0) 57} 58