Alba.Jaml.MSInternal.MeScanner.Read C# (CSharp) Метод

Read() публичный Метод

public Read ( ) : void
Результат void
        public void Read ()
        {
            bool flag = false;
            bool flag2 = false;
            this._tokenText = string.Empty;
            this._tokenXamlType = null;
            this._tokenProperty = null;
            this._tokenNamespace = null;
            this.Advance();
            this.AdvanceOverWhitespace();
            if (this.IsAtEndOfInput) {
                this._token = MeTokenType.None;
            }
            else {
                switch (this.CurrentChar) {
                    case '{':
                        if (this.NextChar != '}') {
                            this._token = MeTokenType.Open;
                            this._state = StringState.Type;
                        }
                        else {
                            this._token = MeTokenType.String;
                            this._state = StringState.Value;
                            flag2 = true;
                        }
                        break;

                    case '}':
                        this._token = MeTokenType.Close;
                        this._state = StringState.Value;
                        break;

                    case '=':
                        this._token = MeTokenType.EqualSign;
                        this._state = StringState.Value;
                        break;

                    case ',':
                        this._token = MeTokenType.Comma;
                        this._state = StringState.Value;
                        break;

                    case '"':
                    case '\'':
                        if (this.NextChar == '{') {
                            this.Advance();
                            if (this.NextChar != '}') {
                                flag = true;
                            }
                            this.PushBack();
                        }
                        flag2 = true;
                        break;

                    default:
                        flag2 = true;
                        break;
                }
                if (flag2) {
                    string longName = this.ReadString();
                    this._token = flag ? MeTokenType.QuotedMarkupExtension : MeTokenType.String;
                    switch (this._state) {
                        case StringState.Type:
                            this._token = MeTokenType.TypeName;
                            this.ResolveTypeName(longName);
                            break;

                        case StringState.Property:
                            this._token = MeTokenType.PropertyName;
                            this.ResolvePropertyName(longName);
                            break;
                    }
                    this._state = StringState.Value;
                    this._tokenText = RemoveEscapes(longName);
                }
            }
        }