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

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

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

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

@ -65,7 +65,7 @@ namespace ICSharpCode.NRefactory.Parser @@ -65,7 +65,7 @@ namespace ICSharpCode.NRefactory.Parser
public abstract Expression ParseExpression();
public abstract BlockStatement ParseBlock();
public abstract List<INode> ParseTypeMembers();
public abstract IList<INode> ParseTypeMembers();
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 @@ -84,7 +84,7 @@ namespace ICSharpCode.NRefactory.Parser.CSharp
return blockStmt;
}
public override List<INode> ParseTypeMembers()
public override IList<INode> ParseTypeMembers()
{
lexer.NextToken();
compilationUnit = new CompilationUnit();

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

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

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

@ -79,7 +79,7 @@ namespace ICSharpCode.NRefactory @@ -79,7 +79,7 @@ namespace ICSharpCode.NRefactory
}
if (errors.Count > 0) {
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) {
errors = parser.Errors;
specials = parser.Lexer.SpecialTracker.RetrieveSpecials();
@ -91,9 +91,9 @@ namespace ICSharpCode.NRefactory @@ -91,9 +91,9 @@ namespace ICSharpCode.NRefactory
sealed class NodeListNode : INode
{
List<INode> nodes;
IList<INode> nodes;
public NodeListNode(List<INode> nodes)
public NodeListNode(IList<INode> nodes)
{
this.nodes = nodes;
}
@ -103,7 +103,7 @@ namespace ICSharpCode.NRefactory @@ -103,7 +103,7 @@ namespace ICSharpCode.NRefactory
set { throw new NotSupportedException(); }
}
public List<INode> Children {
public IList<INode> Children {
get { return nodes; }
}

Loading…
Cancel
Save