protected PredPrediction[] GetPredicatePredictions(BitSet ambigAlts,
SemanticContext[] altToPred)
{
List<PredPrediction> pairs = new List<PredPrediction>();
bool containsPredicate = false;
for (int i = 1; i < altToPred.Length; i++)
{
SemanticContext pred = altToPred[i];
// unpredicated is indicated by SemanticContext.NONE
if (ambigAlts != null && ambigAlts[i])
{
pairs.Add(new PredPrediction(pred, i));
}
if (pred != SemanticContext.NONE) containsPredicate = true;
}
if (!containsPredicate)
{
return null;
}
// Console.WriteLine(Arrays.toString(altToPred)+"->"+pairs);
return pairs.ToArray();
}