protected override async Task <GetSyntaxTreeResponse> HandleMessage(GetSyntaxTreeRequest parameters, RequestContext <GetSyntaxTreeResponse> context)
        {
            ALSyntaxTree syntaxTree = this.Server.SyntaxTrees.FindOrCreate(parameters.path, parameters.open);

            syntaxTree.Load(parameters.source);

            GetSyntaxTreeResponse response = new GetSyntaxTreeResponse();

            response.root = syntaxTree.RootSymbol;

            return(response);
        }
Exemplo n.º 2
0
        protected override async Task <GetSyntaxTreeSymbolResponse> HandleMessage(GetSyntaxTreeSymbolRequest parameters, RequestContext <GetSyntaxTreeSymbolResponse> context)
        {
            ALSyntaxTree       syntaxTree = this.Server.SyntaxTrees.FindOrCreate(parameters.path, false);
            ALSyntaxTreeSymbol symbol     = syntaxTree.GetSyntaxTreeSymbolByPath(parameters.symbolPath);

            if (symbol != null)
            {
                symbol = symbol.CreateSerializableCopy();
            }

            GetSyntaxTreeSymbolResponse response = new GetSyntaxTreeSymbolResponse();

            response.symbol = symbol;

            return(response);
        }