Esempio n. 1
0
        public SyntaxErrors CheckSyntax(CodeInput input)
        {
            var          workspace = new AdhocWorkspace();
            SyntaxTree   tree      = input.Language == Language.CSharp ? CSharpSyntaxTree.ParseText(input.Code) : VisualBasicSyntaxTree.ParseText(input.Code);
            SyntaxErrors errors    = new SyntaxErrors();

            foreach (var obj in tree.GetDiagnostics())
            {
                errors.Add(new SyntaxError
                {
                    Description = obj.Descriptor.Description.ToString(),
                    Warning     = obj.WarningLevel.ToString(),
                    Severity    = obj.Severity.ToString(),
                    Location    = obj.Location.Kind.ToString(),
                    CharacterAt = obj.Location.GetLineSpan().StartLinePosition.Character.ToString(),
                    OnLine      = obj.Location.GetLineSpan().StartLinePosition.Line.ToString()
                });
            }
            return(errors);
        }
Esempio n. 2
0
        public SyntaxErrors CheckSyntax(CodeInput input)
        {
            var workspace = new AdhocWorkspace();
            SyntaxTree tree = input.Language == Language.CSharp ? CSharpSyntaxTree.ParseText(input.Code) : VisualBasicSyntaxTree.ParseText(input.Code);
            SyntaxErrors errors = new SyntaxErrors();

            foreach (var obj in tree.GetDiagnostics())
            {
                errors.Add(new SyntaxError
                    {
                        Description = obj.Descriptor.Description.ToString(),
                        Warning = obj.WarningLevel.ToString(),
                        Severity = obj.Severity.ToString(),
                        Location = obj.Location.Kind.ToString(),
                        CharacterAt = obj.Location.GetLineSpan().StartLinePosition.Character.ToString(),
                        OnLine = obj.Location.GetLineSpan().StartLinePosition.Line.ToString()
                    });
            }
            return errors;
        }
Esempio n. 3
0
 public void AddError(SyntaxError error)
 {
     SyntaxErrors.Add(error);
 }