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); }
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; }
public void AddError(SyntaxError error) { SyntaxErrors.Add(error); }