forked from jasder/antlr
Updated collections in SemanticContext
This commit is contained in:
parent
0cc20fc963
commit
dbdec984e2
|
@ -29,6 +29,7 @@
|
||||||
*/
|
*/
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
using Antlr4.Runtime;
|
using Antlr4.Runtime;
|
||||||
using Antlr4.Runtime.Atn;
|
using Antlr4.Runtime.Atn;
|
||||||
using Antlr4.Runtime.Misc;
|
using Antlr4.Runtime.Misc;
|
||||||
|
@ -204,11 +205,10 @@ namespace Antlr4.Runtime.Atn
|
||||||
|
|
||||||
public AND(SemanticContext a, SemanticContext b)
|
public AND(SemanticContext a, SemanticContext b)
|
||||||
{
|
{
|
||||||
ISet<SemanticContext> operands = new HashSet<SemanticContext>();
|
HashSet<SemanticContext> operands = new HashSet<SemanticContext>();
|
||||||
if (a is SemanticContext.AND)
|
if (a is SemanticContext.AND)
|
||||||
{
|
{
|
||||||
Sharpen.Collections.AddAll(operands, Arrays.AsList(((SemanticContext.AND)a).opnds
|
operands.UnionWith(((AND)a).opnds);
|
||||||
));
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -216,8 +216,7 @@ namespace Antlr4.Runtime.Atn
|
||||||
}
|
}
|
||||||
if (b is SemanticContext.AND)
|
if (b is SemanticContext.AND)
|
||||||
{
|
{
|
||||||
Sharpen.Collections.AddAll(operands, Arrays.AsList(((SemanticContext.AND)b).opnds
|
operands.UnionWith(((AND)b).opnds);
|
||||||
));
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -228,12 +227,10 @@ namespace Antlr4.Runtime.Atn
|
||||||
if (precedencePredicates.Count > 0)
|
if (precedencePredicates.Count > 0)
|
||||||
{
|
{
|
||||||
// interested in the transition with the lowest precedence
|
// interested in the transition with the lowest precedence
|
||||||
SemanticContext.PrecedencePredicate reduced = Sharpen.Collections.Min(precedencePredicates
|
SemanticContext.PrecedencePredicate reduced = precedencePredicates.Min();
|
||||||
);
|
|
||||||
operands.Add(reduced);
|
operands.Add(reduced);
|
||||||
}
|
}
|
||||||
opnds = Sharpen.Collections.ToArray(operands, new SemanticContext[operands.Count]
|
opnds = operands.ToArray();
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool Equals(object obj)
|
public override bool Equals(object obj)
|
||||||
|
@ -283,8 +280,7 @@ namespace Antlr4.Runtime.Atn
|
||||||
ISet<SemanticContext> operands = new HashSet<SemanticContext>();
|
ISet<SemanticContext> operands = new HashSet<SemanticContext>();
|
||||||
if (a is SemanticContext.OR)
|
if (a is SemanticContext.OR)
|
||||||
{
|
{
|
||||||
Sharpen.Collections.AddAll(operands, Arrays.AsList(((SemanticContext.OR)a).opnds)
|
operands.UnionWith(((OR)a).opnds);
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -292,8 +288,7 @@ namespace Antlr4.Runtime.Atn
|
||||||
}
|
}
|
||||||
if (b is SemanticContext.OR)
|
if (b is SemanticContext.OR)
|
||||||
{
|
{
|
||||||
Sharpen.Collections.AddAll(operands, Arrays.AsList(((SemanticContext.OR)b).opnds)
|
operands.UnionWith(((OR)b).opnds);
|
||||||
);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -304,12 +299,10 @@ namespace Antlr4.Runtime.Atn
|
||||||
if (precedencePredicates.Count > 0)
|
if (precedencePredicates.Count > 0)
|
||||||
{
|
{
|
||||||
// interested in the transition with the highest precedence
|
// interested in the transition with the highest precedence
|
||||||
SemanticContext.PrecedencePredicate reduced = Sharpen.Collections.Max(precedencePredicates
|
SemanticContext.PrecedencePredicate reduced = precedencePredicates.Max();
|
||||||
);
|
|
||||||
operands.Add(reduced);
|
operands.Add(reduced);
|
||||||
}
|
}
|
||||||
this.opnds = Sharpen.Collections.ToArray(operands, new SemanticContext[operands.Count
|
this.opnds = operands.ToArray();
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool Equals(object obj)
|
public override bool Equals(object obj)
|
||||||
|
|
Loading…
Reference in New Issue