/* * Copyright (c) 2022 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ exports.etsAnnotationsEnable = true; exports.emitIntermediateTS = true; exports.source = ` const a = 1 const b = 2 @interface Anno { d = !a e: number = a | b f: number = a & b g: number = a >> b h: number = a >>> b i: number = a << b j: number = a ^ b k: number = a * b l: number = a / b m: number = a + b o: number = a - b p: number = a % b q: number = a ** b r: number = a && b s: number = (a - 1) || b t = a < 2 u = a <= 1 v = a > 2 w = a >= 1 x = a === 1 y = a !== 1 z = a == 1 } ` exports.expectResult = `let __generate__Id: number = 0; function generateId(): string { return "annotationDeclarationFieldInitializer1_" + ++__generate__Id; } const a = 1; const b = 2; @interface __$$ETS_ANNOTATION$$__Anno { d: boolean = false; e: number = 3; f: number = 0; g: number = 0; h: number = 0; i: number = 4; j: number = 3; k: number = 2; l: number = 0.5; m: number = 3; o: number = -1; p: number = 1; q: number = 1; r: number = 2; s: number = 2; t: boolean = true; u: boolean = true; v: boolean = false; w: boolean = true; x: boolean = true; y: boolean = false; z: boolean = true; } `