@neo-one/smart-contract-compiler
Version:
NEO•ONE TypeScript smart contract compiler.
28 lines (27 loc) • 1.47 kB
TypeScript
import ts from 'typescript';
import { AnalysisService } from './analysis';
import { Builtins } from './compile/builtins';
import { DiagnosticCode } from './DiagnosticCode';
import { DiagnosticMessage } from './DiagnosticMessage';
import { CompilerHost } from './types';
export declare class Context {
readonly sourceFiles: Set<ts.SourceFile>;
readonly program: ts.Program;
readonly typeChecker: ts.TypeChecker;
readonly languageService: ts.LanguageService;
readonly host: CompilerHost;
private readonly mutableDiagnostics;
readonly builtins: Builtins;
readonly analysis: AnalysisService;
constructor(sourceFiles: Set<ts.SourceFile>, program: ts.Program, typeChecker: ts.TypeChecker, languageService: ts.LanguageService, host: CompilerHost, mutableDiagnostics?: ts.Diagnostic[]);
readonly diagnostics: ReadonlyArray<ts.Diagnostic>;
update(sourceFiles: Set<ts.SourceFile>, program: ts.Program, typeChecker: ts.TypeChecker, languageService: ts.LanguageService): Context;
reportError(node: ts.Node, code: DiagnosticCode, message: DiagnosticMessage, ...args: any[]): void;
reportWarning(node: ts.Node, code: DiagnosticCode, message: DiagnosticMessage, ...args: any[]): void;
reportUnsupported(node: ts.Node): void;
reportUnsupportedEfficiency(node: ts.Node): void;
reportTypeError(node: ts.Node): void;
reportTypeWarning(node: ts.Node): void;
private getDiagnosticMessage;
private isDeclarationFile;
}