public virtual Differences VisitStatementSnippet(StatementSnippet snippet1, StatementSnippet snippet2){ Differences differences = new Differences(snippet1, snippet2); if (snippet1 == null || snippet2 == null){ if (snippet1 != snippet2) differences.NumberOfDifferences++; else differences.NumberOfSimilarities++; return differences; } StatementSnippet changes = (StatementSnippet)snippet2.Clone(); StatementSnippet deletions = (StatementSnippet)snippet2.Clone(); StatementSnippet insertions = (StatementSnippet)snippet2.Clone(); if (snippet1.SourceContext.Document == null || snippet2.SourceContext.Document == null){ if (snippet1.SourceContext.Document == snippet2.SourceContext.Document) differences.NumberOfSimilarities++; else differences.NumberOfDifferences++; }else if (snippet1.SourceContext.Document.Name == snippet2.SourceContext.Document.Name) differences.NumberOfSimilarities++; else differences.NumberOfDifferences++; if (differences.NumberOfDifferences == 0){ differences.Changes = null; differences.Deletions = null; differences.Insertions = null; }else{ differences.Changes = changes; differences.Deletions = deletions; differences.Insertions = insertions; } return differences; }
public virtual StatementSnippet VisitStatementSnippet(StatementSnippet snippet, StatementSnippet changes, StatementSnippet deletions, StatementSnippet insertions){ this.UpdateSourceContext(snippet, changes); if (snippet == null) return changes; if (changes != null){ if (deletions == null || insertions == null) Debug.Assert(false); else{ } }else if (deletions != null) return null; return snippet; }
public virtual StatementSnippet VisitStatementSnippet(StatementSnippet snippet){ return snippet; }
public override StatementSnippet VisitStatementSnippet(StatementSnippet snippet){ if (snippet == null) return null; Document doc = snippet.SourceContext.Document; if (doc == null) return null; string fileName = doc.Name; int lineNumber = doc.LineNumber; DocumentText sourceText = doc.Text; IParserFactory pf = snippet.ParserFactory; IParser p; if (pf == null) p = this.DefaultParserFactory.CreateParser(fileName, lineNumber, sourceText, this.SymbolTable, this.ErrorNodes, this.Options); else p = pf.CreateParser(fileName, lineNumber, sourceText, this.SymbolTable, this.ErrorNodes, this.Options); if (p == null) return null; p.ParseStatements(this.CurrentStatementList); return null; }
public override StatementSnippet VisitStatementSnippet(StatementSnippet snippet) { throw new ApplicationException("unimplemented"); }
public virtual void VisitStatementSnippet(StatementSnippet snippet) { }
public override StatementSnippet VisitStatementSnippet(StatementSnippet snippet) { if (snippet == null) return null; return base.VisitStatementSnippet((StatementSnippet)snippet.Clone()); }
public virtual StatementSnippet VisitStatementSnippet(StatementSnippet snippet1, StatementSnippet snippet2) { return snippet1; }
private Statement Translate(CodeSnippetStatement statement){ if (statement == null) return null; StatementSnippet snippet = new StatementSnippet(); Document doc = null; if (statement.LinePragma == null) doc = this.compiler.CreateDocument(null, 1, statement.Value); else doc = this.compiler.CreateDocument(statement.LinePragma.FileName, statement.LinePragma.LineNumber, statement.Value); snippet.SourceContext = new SourceContext(doc, 0, doc.Text.Length); return snippet; }
public override StatementSnippet VisitStatementSnippet(StatementSnippet snippet) { System.Compiler.Parser p = this.DefaultCompiler.CreateParser(snippet.SourceContext.Document, this.ErrorNodes); p.ParseStatements(this.CurrentStatementList); return(null); }
public override StatementSnippet VisitStatementSnippet(StatementSnippet snippet) { throw new ApplicationException("unimplemented"); }