System\Xml\Core\XmlTextWriter.cs (270)
141State[] stateTable;
142State currentState;
205static readonly State[] stateTableDefault = {
208/* Token.PI */ State.Prolog, State.Prolog, State.PostDTD, State.Content, State.Content, State.Content, State.Error, State.Epilog,
209/* Token.Doctype */ State.PostDTD, State.PostDTD, State.Error, State.Error, State.Error, State.Error, State.Error, State.Error,
210/* Token.Comment */ State.Prolog, State.Prolog, State.PostDTD, State.Content, State.Content, State.Content, State.Error, State.Epilog,
211/* Token.CData */ State.Content, State.Content, State.Error, State.Content, State.Content, State.Content, State.Error, State.Epilog,
212/* Token.StartElement */ State.Element, State.Element, State.Element, State.Element, State.Element, State.Element, State.Error, State.Element,
213/* Token.EndElement */ State.Error, State.Error, State.Error, State.Content, State.Content, State.Content, State.Error, State.Error,
214/* Token.LongEndElement */ State.Error, State.Error, State.Error, State.Content, State.Content, State.Content, State.Error, State.Error,
215/* Token.StartAttribute */ State.AttrOnly, State.Error, State.Error, State.Attribute, State.Attribute, State.Error, State.Error, State.Error,
216/* Token.EndAttribute */ State.Error, State.Error, State.Error, State.Error, State.Element, State.Error, State.Epilog, State.Error,
217/* Token.Content */ State.Content, State.Content, State.Error, State.Content, State.Attribute, State.Content, State.Attribute, State.Epilog,
218/* Token.Base64 */ State.Content, State.Content, State.Error, State.Content, State.Attribute, State.Content, State.Attribute, State.Epilog,
219/* Token.RawData */ State.Prolog, State.Prolog, State.PostDTD, State.Content, State.Attribute, State.Content, State.Attribute, State.Epilog,
220/* Token.Whitespace */ State.Prolog, State.Prolog, State.PostDTD, State.Content, State.Attribute, State.Content, State.Attribute, State.Epilog,
223static readonly State[] stateTableDocument = {
226/* Token.PI */ State.Error, State.Prolog, State.PostDTD, State.Content, State.Content, State.Content, State.Error, State.Epilog,
227/* Token.Doctype */ State.Error, State.PostDTD, State.Error, State.Error, State.Error, State.Error, State.Error, State.Error,
228/* Token.Comment */ State.Error, State.Prolog, State.PostDTD, State.Content, State.Content, State.Content, State.Error, State.Epilog,
229/* Token.CData */ State.Error, State.Error, State.Error, State.Content, State.Content, State.Content, State.Error, State.Error,
230/* Token.StartElement */ State.Error, State.Element, State.Element, State.Element, State.Element, State.Element, State.Error, State.Error,
231/* Token.EndElement */ State.Error, State.Error, State.Error, State.Content, State.Content, State.Content, State.Error, State.Error,
232/* Token.LongEndElement */ State.Error, State.Error, State.Error, State.Content, State.Content, State.Content, State.Error, State.Error,
233/* Token.StartAttribute */ State.Error, State.Error, State.Error, State.Attribute, State.Attribute, State.Error, State.Error, State.Error,
234/* Token.EndAttribute */ State.Error, State.Error, State.Error, State.Error, State.Element, State.Error, State.Error, State.Error,
235/* Token.Content */ State.Error, State.Error, State.Error, State.Content, State.Attribute, State.Content, State.Error, State.Error,
236/* Token.Base64 */ State.Error, State.Error, State.Error, State.Content, State.Attribute, State.Content, State.Error, State.Error,
237/* Token.RawData */ State.Error, State.Prolog, State.PostDTD, State.Content, State.Attribute, State.Content, State.Error, State.Epilog,
238/* Token.Whitespace */ State.Error, State.Prolog, State.PostDTD, State.Content, State.Attribute, State.Content, State.Error, State.Epilog,
259currentState = State.Start;
306if (this.currentState != State.Start)
364if (this.currentState != State.Epilog) {
365if (this.currentState == State.Closed) {
373this.currentState = State.Start;
377currentState = State.Error;
410currentState = State.Error;
471currentState = State.Error;
595currentState = State.Error;
606currentState = State.Error;
626currentState = State.Error;
645currentState = State.Error;
663currentState = State.Error;
676currentState = State.Error;
688currentState = State.Error;
707currentState = State.Error;
721currentState = State.Error;
733currentState = State.Error;
746currentState = State.Error;
758currentState = State.Error;
770currentState = State.Error;
792currentState = State.Error;
805currentState = State.Error;
814case State.Start :
816case State.Prolog :
817case State.PostDTD :
819case State.Element :
821case State.Attribute :
822case State.AttrOnly:
824case State.Content :
825case State.Epilog :
827case State.Error:
829case State.Closed:
846this.currentState = State.Closed;
864currentState = State.Error;
877if (this.currentState != State.Attribute) {
895currentState = State.Error;
951currentState = State.Error;
961if (this.currentState != State.Start) {
965this.currentState = State.Prolog;
984currentState = State.Error;
990if (this.currentState == State.Closed) {
993else if (this.currentState == State.Error) {
994throw new InvalidOperationException(Res.GetString(Res.Xml_WrongToken, tokenName[(int)token], stateName[(int)State.Error]));
997State newState = this.stateTable[(int)token * 8 + (int)this.currentState];
998if (newState == State.Error) {
1004if (this.indented && this.currentState != State.Start) {
1013if (this.currentState == State.Attribute) {
1017else if (this.currentState == State.Element) {
1023else if (this.indented && this.currentState != State.Start) {
1033if (this.currentState == State.Attribute) {
1036if (this.currentState == State.Content) {
1043newState = State.Epilog;
1051if (this.currentState == State.Attribute) {
1055else if (this.currentState == State.Element) {
1075if (this.currentState == State.Element && this.lastToken != Token.Content) {
1078if (newState == State.Content) {
1129currentState = State.Error;