UNPKG

3.94 kBTypeScriptView Raw
1/**
2 * @license
3 * Copyright Google LLC All Rights Reserved.
4 *
5 * Use of this source code is governed by an MIT-style license that can be
6 * found in the LICENSE file at https://angular.io/license
7 */
8import { ParseSourceSpan } from '../parse_util';
9import * as o from './output_ast';
10import { SourceMapGenerator } from './source_map';
11export declare class EmitterVisitorContext {
12 private _indent;
13 static createRoot(): EmitterVisitorContext;
14 private _lines;
15 constructor(_indent: number);
16 println(from?: {
17 sourceSpan: ParseSourceSpan | null;
18 } | null, lastPart?: string): void;
19 lineIsEmpty(): boolean;
20 lineLength(): number;
21 print(from: {
22 sourceSpan: ParseSourceSpan | null;
23 } | null, part: string, newLine?: boolean): void;
24 removeEmptyLastLine(): void;
25 incIndent(): void;
26 decIndent(): void;
27 toSource(): string;
28 toSourceMapGenerator(genFilePath: string, startsAtLine?: number): SourceMapGenerator;
29 spanOf(line: number, column: number): ParseSourceSpan | null;
30}
31export declare abstract class AbstractEmitterVisitor implements o.StatementVisitor, o.ExpressionVisitor {
32 private _escapeDollarInStrings;
33 constructor(_escapeDollarInStrings: boolean);
34 protected printLeadingComments(stmt: o.Statement, ctx: EmitterVisitorContext): void;
35 visitExpressionStmt(stmt: o.ExpressionStatement, ctx: EmitterVisitorContext): any;
36 visitReturnStmt(stmt: o.ReturnStatement, ctx: EmitterVisitorContext): any;
37 visitIfStmt(stmt: o.IfStmt, ctx: EmitterVisitorContext): any;
38 abstract visitDeclareVarStmt(stmt: o.DeclareVarStmt, ctx: EmitterVisitorContext): any;
39 visitWriteVarExpr(expr: o.WriteVarExpr, ctx: EmitterVisitorContext): any;
40 visitWriteKeyExpr(expr: o.WriteKeyExpr, ctx: EmitterVisitorContext): any;
41 visitWritePropExpr(expr: o.WritePropExpr, ctx: EmitterVisitorContext): any;
42 visitInvokeFunctionExpr(expr: o.InvokeFunctionExpr, ctx: EmitterVisitorContext): any;
43 visitTaggedTemplateExpr(expr: o.TaggedTemplateExpr, ctx: EmitterVisitorContext): any;
44 visitWrappedNodeExpr(ast: o.WrappedNodeExpr<any>, ctx: EmitterVisitorContext): any;
45 visitTypeofExpr(expr: o.TypeofExpr, ctx: EmitterVisitorContext): any;
46 visitReadVarExpr(ast: o.ReadVarExpr, ctx: EmitterVisitorContext): any;
47 visitInstantiateExpr(ast: o.InstantiateExpr, ctx: EmitterVisitorContext): any;
48 visitLiteralExpr(ast: o.LiteralExpr, ctx: EmitterVisitorContext): any;
49 visitLocalizedString(ast: o.LocalizedString, ctx: EmitterVisitorContext): any;
50 abstract visitExternalExpr(ast: o.ExternalExpr, ctx: EmitterVisitorContext): any;
51 visitConditionalExpr(ast: o.ConditionalExpr, ctx: EmitterVisitorContext): any;
52 visitNotExpr(ast: o.NotExpr, ctx: EmitterVisitorContext): any;
53 abstract visitFunctionExpr(ast: o.FunctionExpr, ctx: EmitterVisitorContext): any;
54 abstract visitDeclareFunctionStmt(stmt: o.DeclareFunctionStmt, context: any): any;
55 visitUnaryOperatorExpr(ast: o.UnaryOperatorExpr, ctx: EmitterVisitorContext): any;
56 visitBinaryOperatorExpr(ast: o.BinaryOperatorExpr, ctx: EmitterVisitorContext): any;
57 visitReadPropExpr(ast: o.ReadPropExpr, ctx: EmitterVisitorContext): any;
58 visitReadKeyExpr(ast: o.ReadKeyExpr, ctx: EmitterVisitorContext): any;
59 visitLiteralArrayExpr(ast: o.LiteralArrayExpr, ctx: EmitterVisitorContext): any;
60 visitLiteralMapExpr(ast: o.LiteralMapExpr, ctx: EmitterVisitorContext): any;
61 visitCommaExpr(ast: o.CommaExpr, ctx: EmitterVisitorContext): any;
62 visitAllExpressions(expressions: o.Expression[], ctx: EmitterVisitorContext, separator: string): void;
63 visitAllObjects<T>(handler: (t: T) => void, expressions: T[], ctx: EmitterVisitorContext, separator: string): void;
64 visitAllStatements(statements: o.Statement[], ctx: EmitterVisitorContext): void;
65}
66export declare function escapeIdentifier(input: string, escapeDollar: boolean, alwaysQuote?: boolean): any;