-
Notifications
You must be signed in to change notification settings - Fork 301
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'next' of https://github.com/rubberduck-vba/Rubberduck i…
…nto CleanComSafeLeakRound2
- Loading branch information
Showing
62 changed files
with
1,844 additions
and
877 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
23 changes: 23 additions & 0 deletions
23
Rubberduck.CodeAnalysis/CodePathAnalysis/Nodes/Abstract/NodeBase.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
using System.Collections.Generic; | ||
using System.Collections.Immutable; | ||
using Antlr4.Runtime.Tree; | ||
using Rubberduck.Parsing.Symbols; | ||
|
||
namespace Rubberduck.Inspections.CodePathAnalysis.Nodes | ||
{ | ||
public abstract class NodeBase : INode | ||
{ | ||
protected NodeBase(IParseTree tree) | ||
{ | ||
Children = new List<INode>().ToImmutableList(); | ||
ParseTree = tree; | ||
} | ||
|
||
public int SortOrder { get; set; } | ||
public ImmutableList<INode> Children { get; set; } | ||
public INode Parent { get; set; } | ||
public IParseTree ParseTree { get; } | ||
public Declaration Declaration { get; set; } | ||
public IdentifierReference Reference { get; set; } | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
18 changes: 3 additions & 15 deletions
18
Rubberduck.CodeAnalysis/CodePathAnalysis/Nodes/Implementations/AssignmentNode.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,9 @@ | ||
using System.Collections.Generic; | ||
using System.Collections.Immutable; | ||
using Rubberduck.Parsing.Symbols; | ||
using Antlr4.Runtime.Tree; | ||
|
||
namespace Rubberduck.Inspections.CodePathAnalysis.Nodes | ||
{ | ||
public class AssignmentNode : INode | ||
public class AssignmentNode : NodeBase | ||
{ | ||
public AssignmentNode() | ||
{ | ||
Children = new List<INode>().ToImmutableList(); | ||
} | ||
|
||
public int SortOrder { get; set; } | ||
public ImmutableList<INode> Children { get; set; } | ||
public INode Parent { get; set; } | ||
|
||
public Declaration Declaration { get; set; } | ||
public IdentifierReference Reference { get; set; } | ||
public AssignmentNode(IParseTree tree) : base(tree) { } | ||
} | ||
} |
18 changes: 3 additions & 15 deletions
18
Rubberduck.CodeAnalysis/CodePathAnalysis/Nodes/Implementations/BlockNode.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,9 @@ | ||
using System.Collections.Generic; | ||
using System.Collections.Immutable; | ||
using Rubberduck.Parsing.Symbols; | ||
using Antlr4.Runtime.Tree; | ||
|
||
namespace Rubberduck.Inspections.CodePathAnalysis.Nodes | ||
{ | ||
public class BlockNode : INode | ||
public class BlockNode : NodeBase | ||
{ | ||
public BlockNode() | ||
{ | ||
Children = new List<INode>().ToImmutableList(); | ||
} | ||
|
||
public int SortOrder { get; set; } | ||
public ImmutableList<INode> Children { get; set; } | ||
public INode Parent { get; set; } | ||
|
||
public Declaration Declaration { get; set; } | ||
public IdentifierReference Reference { get; set; } | ||
public BlockNode(IParseTree tree) : base(tree) { } | ||
} | ||
} |
18 changes: 3 additions & 15 deletions
18
Rubberduck.CodeAnalysis/CodePathAnalysis/Nodes/Implementations/BranchNode.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,9 @@ | ||
using System.Collections.Generic; | ||
using System.Collections.Immutable; | ||
using Rubberduck.Parsing.Symbols; | ||
using Antlr4.Runtime.Tree; | ||
|
||
namespace Rubberduck.Inspections.CodePathAnalysis.Nodes | ||
{ | ||
public class BranchNode : IBranchNode | ||
public class BranchNode : NodeBase, IBranchNode | ||
{ | ||
public BranchNode() | ||
{ | ||
Children = new List<INode>().ToImmutableList(); | ||
} | ||
|
||
public int SortOrder { get; set; } | ||
public ImmutableList<INode> Children { get; set; } | ||
public INode Parent { get; set; } | ||
|
||
public Declaration Declaration { get; set; } | ||
public IdentifierReference Reference { get; set; } | ||
public BranchNode(IParseTree tree) : base(tree) { } | ||
} | ||
} |
18 changes: 3 additions & 15 deletions
18
Rubberduck.CodeAnalysis/CodePathAnalysis/Nodes/Implementations/DeclarationNode.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,9 @@ | ||
using System.Collections.Generic; | ||
using System.Collections.Immutable; | ||
using Rubberduck.Parsing.Symbols; | ||
using Antlr4.Runtime.Tree; | ||
|
||
namespace Rubberduck.Inspections.CodePathAnalysis.Nodes | ||
{ | ||
public class DeclarationNode : INode | ||
public class DeclarationNode : NodeBase | ||
{ | ||
public DeclarationNode() | ||
{ | ||
Children = new List<INode>().ToImmutableList(); | ||
} | ||
|
||
public int SortOrder { get; set; } | ||
public ImmutableList<INode> Children { get; set; } | ||
public INode Parent { get; set; } | ||
|
||
public Declaration Declaration { get; set; } | ||
public IdentifierReference Reference { get; set; } | ||
public DeclarationNode(IParseTree tree) : base(tree) { } | ||
} | ||
} |
18 changes: 3 additions & 15 deletions
18
Rubberduck.CodeAnalysis/CodePathAnalysis/Nodes/Implementations/GenericNode.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,9 @@ | ||
using System.Collections.Generic; | ||
using System.Collections.Immutable; | ||
using Rubberduck.Parsing.Symbols; | ||
using Antlr4.Runtime.Tree; | ||
|
||
namespace Rubberduck.Inspections.CodePathAnalysis.Nodes | ||
{ | ||
public class GenericNode : INode | ||
public class GenericNode : NodeBase | ||
{ | ||
public GenericNode() | ||
{ | ||
Children = new List<INode>().ToImmutableList(); | ||
} | ||
|
||
public int SortOrder { get; set; } | ||
public ImmutableList<INode> Children { get; set; } | ||
public INode Parent { get; set; } | ||
|
||
public Declaration Declaration { get; set; } | ||
public IdentifierReference Reference { get; set; } | ||
public GenericNode(IParseTree tree) : base(tree) { } | ||
} | ||
} |
18 changes: 3 additions & 15 deletions
18
Rubberduck.CodeAnalysis/CodePathAnalysis/Nodes/Implementations/LoopNode.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,9 @@ | ||
using Rubberduck.Parsing.Symbols; | ||
using System.Collections.Generic; | ||
using System.Collections.Immutable; | ||
using Antlr4.Runtime.Tree; | ||
|
||
namespace Rubberduck.Inspections.CodePathAnalysis.Nodes | ||
{ | ||
public class LoopNode : ILoopNode | ||
public class LoopNode : NodeBase, ILoopNode | ||
{ | ||
public LoopNode() | ||
{ | ||
Children = new List<INode>().ToImmutableList(); | ||
} | ||
|
||
public int SortOrder { get; set; } | ||
public ImmutableList<INode> Children { get; set; } | ||
public INode Parent { get; set; } | ||
|
||
public Declaration Declaration { get; set; } | ||
public IdentifierReference Reference { get; set; } | ||
public LoopNode(IParseTree tree) : base(tree) { } | ||
} | ||
} |
18 changes: 3 additions & 15 deletions
18
Rubberduck.CodeAnalysis/CodePathAnalysis/Nodes/Implementations/ReferenceNode.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,9 @@ | ||
using System.Collections.Generic; | ||
using System.Collections.Immutable; | ||
using Rubberduck.Parsing.Symbols; | ||
using Antlr4.Runtime.Tree; | ||
|
||
namespace Rubberduck.Inspections.CodePathAnalysis.Nodes | ||
{ | ||
public class ReferenceNode : INode | ||
public class ReferenceNode : NodeBase | ||
{ | ||
public ReferenceNode() | ||
{ | ||
Children = new List<INode>().ToImmutableList(); | ||
} | ||
|
||
public int SortOrder { get; set; } | ||
public ImmutableList<INode> Children { get; set; } | ||
public INode Parent { get; set; } | ||
|
||
public Declaration Declaration { get; set; } | ||
public IdentifierReference Reference { get; set; } | ||
public ReferenceNode(IParseTree tree) : base(tree) { } | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.