Esempio n. 1
0
        private static async Task RunMain()
        {
            var tsCtx = new TypeScriptContext();
            await tsCtx.LoadComponentsAsync();

            const string mainFileName = "main.ts";
            //Load script
            string script = @"

class Program {
    static main() {
        console.log(""Hello, World!"");
    }
    static other() {
        console.log(""Hello, Other World!"");
    }
}

Program.main();
Progra
Program.
Program.ot
";

            tsCtx.OpenFile(mainFileName, script);
            var classNameCompletionInfo = await tsCtx.GetCompletionsAtPositionAsync(mainFileName, 192 /* The 'Progra' line*/);

            var methodCompletionInfo = await tsCtx.GetCompletionsAtPositionAsync(mainFileName, 202 /* The 'Program.' line*/);

            var noCompletionsInfo = await tsCtx.GetCompletionsAtPositionAsync(mainFileName, script.Length - 2);
        }
Esempio n. 2
0
        private static async Task RunMain()
        {
            var tsCtx = new TypeScriptContext();
            await tsCtx.LoadComponentsAsync();

            var scriptSrc = @"

class Program {
    static main() {
        console.log(""Hello, World!"");
    }
}

class Person {
    constructor(public name: string) {
    }

    public sayHello() {
        console.log(this.name + "" says hello!"");
    }
}

class IceCreamSandwich {
    constructor(public size: number) {
    }
    public add(a: number, b: number) {
        return a + b;
    }
}

let bob = new Person(""Bob"");
bob.sayHello();

Program.main();

let num = (new IceCreamSandwich(11)).add(1, 2);
// num = ""error"";
";
            var astJson   = tsCtx.BuildAstJson("main.ts", scriptSrc);

            Console.WriteLine(astJson);

            Console.WriteLine("Analyzing and deserializing AST JSON:");
            var tsAst = tsCtx.BuildAst("main.ts", scriptSrc);
        }
Esempio n. 3
0
 public async Task PrepareLanguageServiceAsync()
 {
     await _typeScriptContext.LoadComponentsAsync();
 }