Alba.Jaml.MSInternal.MePullParser.P_NamedArg C# (CSharp) Метод

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

private P_NamedArg ( Found f ) : IEnumerable
f Found
Результат IEnumerable
        private IEnumerable<XamlNode> P_NamedArg (Found f)
        {
            Found iteratorVariable0 = new Found();
            if (this._tokenizer.Token == MeTokenType.PropertyName) {
                //XamlMember tokenProperty = this._tokenizer.TokenProperty;
                yield return this.Logic_StartMember();
                this.NextToken();
                this.Expect(MeTokenType.EqualSign, "NamedArg ::= PROPERTYNAME @'=' Value");
                this.NextToken();
                switch (this._tokenizer.Token) {
                    case MeTokenType.PropertyName:
                        string str;
                        if (this._context.CurrentMember == null) {
                            str = SR.Get("MissingComma1", new object[] { this._tokenizer.TokenText });
                        }
                        else {
                            str = SR.Get("MissingComma2", new object[] { this._context.CurrentMember.Name, this._tokenizer.TokenText });
                        }
                        throw new XamlParseException(this._tokenizer, str);

                    case MeTokenType.QuotedMarkupExtension: {
                        MePullParser iteratorVariable1 = new MePullParser(this._context);
                        foreach (XamlNode iteratorVariable2 in iteratorVariable1.Parse(this._tokenizer.TokenText, this.LineNumber, this.LinePosition)) {
                            yield return iteratorVariable2;
                        }
                        f.found = true;
                        this.NextToken();
                        break;
                    }
                    case MeTokenType.Open: {
                        IEnumerator<XamlNode> enumerator = this.P_Value(iteratorVariable0).GetEnumerator();
                        while (enumerator.MoveNext()) {
                            XamlNode current = enumerator.Current;
                            yield return current;
                        }
                        f.found = iteratorVariable0.found;
                        break;
                    }
                    default:
                        /*this.SetBrokenRuleString("NamedArg ::= PROPERTYNAME '=' @(STRING | QUOTEDMARKUPEXTENSION | MarkupExtension)");
                        break;*/
                        yield return this.Logic_Text();
                        f.found = true;
                        this.NextToken();
                        break;
                }
                yield return this.Logic_EndMember();
            }
        }