Browse Source

NRefactory: INode.Children type changed from List<T> to more general IList<T>

pull/1/head^2
David Srbecký 18 years ago
parent
commit
932cf1a232
  1. 6
      lib/NRefactory/Project/Src/Ast/AbstractNode.cs
  2. 2
      lib/NRefactory/Project/Src/Ast/INode.cs
  3. 2
      lib/NRefactory/Project/Src/Parser/AbstractParser.cs
  4. 2
      lib/NRefactory/Project/Src/Parser/CSharp/CSharpParser.cs
  5. 2
      lib/NRefactory/Project/Src/Parser/IParser.cs
  6. 2
      lib/NRefactory/Project/Src/Parser/VBNet/VBNetParser.cs
  7. 8
      lib/NRefactory/Project/Src/SnippetParser.cs

6
lib/NRefactory/Project/Src/Ast/AbstractNode.cs

@ -15,14 +15,14 @@ namespace ICSharpCode.NRefactory.Ast
{ {
public abstract class AbstractNode : INode public abstract class AbstractNode : INode
{ {
List<INode> children = new List<INode>(); IList<INode> children = new List<INode>();
public INode Parent { get; set; } public INode Parent { get; set; }
public Location StartLocation { get; set; } public Location StartLocation { get; set; }
public Location EndLocation { get; set; } public Location EndLocation { get; set; }
public object UserData { get; set; } public object UserData { get; set; }
public List<INode> Children { public IList<INode> Children {
get { get {
return children; return children;
} }
@ -49,7 +49,7 @@ namespace ICSharpCode.NRefactory.Ast
return data; return data;
} }
public static string GetCollectionString(ICollection collection) public static string GetCollectionString<T>(IList<T> collection)
{ {
StringBuilder output = new StringBuilder(); StringBuilder output = new StringBuilder();
output.Append('{'); output.Append('{');

2
lib/NRefactory/Project/Src/Ast/INode.cs

@ -17,7 +17,7 @@ namespace ICSharpCode.NRefactory.Ast
set; set;
} }
List<INode> Children { IList<INode> Children {
get; get;
} }

2
lib/NRefactory/Project/Src/Parser/AbstractParser.cs

@ -65,7 +65,7 @@ namespace ICSharpCode.NRefactory.Parser
public abstract Expression ParseExpression(); public abstract Expression ParseExpression();
public abstract BlockStatement ParseBlock(); public abstract BlockStatement ParseBlock();
public abstract List<INode> ParseTypeMembers(); public abstract IList<INode> ParseTypeMembers();
protected abstract void SynErr(int line, int col, int errorNumber); protected abstract void SynErr(int line, int col, int errorNumber);

2
lib/NRefactory/Project/Src/Parser/CSharp/CSharpParser.cs

@ -84,7 +84,7 @@ namespace ICSharpCode.NRefactory.Parser.CSharp
return blockStmt; return blockStmt;
} }
public override List<INode> ParseTypeMembers() public override IList<INode> ParseTypeMembers()
{ {
lexer.NextToken(); lexer.NextToken();
compilationUnit = new CompilationUnit(); compilationUnit = new CompilationUnit();

2
lib/NRefactory/Project/Src/Parser/IParser.cs

@ -36,6 +36,6 @@ namespace ICSharpCode.NRefactory
Expression ParseExpression(); Expression ParseExpression();
BlockStatement ParseBlock(); BlockStatement ParseBlock();
List<INode> ParseTypeMembers(); IList<INode> ParseTypeMembers();
} }
} }

2
lib/NRefactory/Project/Src/Parser/VBNet/VBNetParser.cs

@ -80,7 +80,7 @@ namespace ICSharpCode.NRefactory.Parser.VB
return st as BlockStatement; return st as BlockStatement;
} }
public override List<INode> ParseTypeMembers() public override IList<INode> ParseTypeMembers()
{ {
lexer.NextToken(); lexer.NextToken();
compilationUnit = new CompilationUnit(); compilationUnit = new CompilationUnit();

8
lib/NRefactory/Project/Src/SnippetParser.cs

@ -79,7 +79,7 @@ namespace ICSharpCode.NRefactory
} }
if (errors.Count > 0) { if (errors.Count > 0) {
parser = ParserFactory.CreateParser(language, new StringReader(code)); parser = ParserFactory.CreateParser(language, new StringReader(code));
List<INode> members = parser.ParseTypeMembers(); IList<INode> members = parser.ParseTypeMembers();
if (members != null && members.Count > 0 && parser.Errors.Count < errors.Count) { if (members != null && members.Count > 0 && parser.Errors.Count < errors.Count) {
errors = parser.Errors; errors = parser.Errors;
specials = parser.Lexer.SpecialTracker.RetrieveSpecials(); specials = parser.Lexer.SpecialTracker.RetrieveSpecials();
@ -91,9 +91,9 @@ namespace ICSharpCode.NRefactory
sealed class NodeListNode : INode sealed class NodeListNode : INode
{ {
List<INode> nodes; IList<INode> nodes;
public NodeListNode(List<INode> nodes) public NodeListNode(IList<INode> nodes)
{ {
this.nodes = nodes; this.nodes = nodes;
} }
@ -103,7 +103,7 @@ namespace ICSharpCode.NRefactory
set { throw new NotSupportedException(); } set { throw new NotSupportedException(); }
} }
public List<INode> Children { public IList<INode> Children {
get { return nodes; } get { return nodes; }
} }

Loading…
Cancel
Save