1/* 2 * Copyright (c) 2022 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 16exports.etsAnnotationsEnable = true; 17exports.emitIntermediateTS = true; 18 19exports.source = ` 20const enum E { 21 A, 22 B 23} 24 25@interface Anno { 26 a: number = +E.A 27 b: number = -E.A 28 c: number = ~E.A 29 d = !E.A 30 e: number = E.A | E.B 31 f: number = E.A & E.B 32 g: number = E.A >> E.B 33 h: number = E.A >>> E.B 34 i: number = E.A << E.B 35 j: number = E.A ^ E.B 36 k: number = E.A * E.B 37 l: number = E.A / E.B 38 m: number = E.A + E.B 39 o: number = E.A - E.B 40 p: number = E.A % E.B 41 q: number = E.A ** E.B 42 r: number = E.A && E.B 43 s: number = E.A || E.B 44 t = E.A < E.B 45 u = E.A <= E.B 46 v = E.A > E.B 47 w = E.A >= E.B 48 x = E.A === E.A 49 y = E.B !== E.B 50 z = E.A == E.A 51} 52` 53 54exports.expectResult = `let __generate__Id: number = 0; 55function generateId(): string { 56 return "annotationDeclarationFieldInitializer6_" + ++__generate__Id; 57} 58const enum E { 59 A = 0, 60 B = 1 61} 62@interface __$$ETS_ANNOTATION$$__Anno { 63 a: number = 0; 64 b: number = 0; 65 c: number = -1; 66 d: boolean = true; 67 e: number = 1; 68 f: number = 0; 69 g: number = 0; 70 h: number = 0; 71 i: number = 0; 72 j: number = 1; 73 k: number = 0; 74 l: number = 0; 75 m: number = 1; 76 o: number = -1; 77 p: number = 0; 78 q: number = 0; 79 r: number = 0; 80 s: number = 1; 81 t: boolean = true; 82 u: boolean = true; 83 v: boolean = false; 84 w: boolean = false; 85 x: boolean = true; 86 y: boolean = false; 87 z: boolean = true; 88} 89`