Irony.Parsing.ParsingContext.FilterBracesInExpectedSet C# (CSharp) Метод

FilterBracesInExpectedSet() приватный Метод

private FilterBracesInExpectedSet ( StringSet stateExpectedSet ) : StringSet
stateExpectedSet StringSet
Результат StringSet
    private StringSet FilterBracesInExpectedSet(StringSet stateExpectedSet) {
      var result = new StringSet();
      result.UnionWith(stateExpectedSet);
      //Find what brace we expect
      var nextClosingBrace = string.Empty;
      if (OpenBraces.Count > 0) {
        var lastOpenBraceTerm = OpenBraces.Peek().KeyTerm;
        var nextClosingBraceTerm = lastOpenBraceTerm.IsPairFor as KeyTerm;
        if (nextClosingBraceTerm != null) 
          nextClosingBrace = nextClosingBraceTerm.Text; 
      }
      //Now check all closing braces in result set, and leave only nextClosingBrace
      foreach(var closingBrace in Language.GrammarData.ClosingBraces) {
        if (result.Contains(closingBrace) && closingBrace != nextClosingBrace)
          result.Remove(closingBrace); 
        
      }
      return result; 
    }