void () { if (myBuilder.getTokenType() != XML_DOCTYPE_START) { return; } PsiBuilder.Marker docType = myBuilder.mark(); addToken(); if (myBuilder.getTokenType() != XML_NAME) { docType.done(XML_DOCTYPE); return; } addToken(); if (myBuilder.getTokenType() == XML_DOCTYPE_SYSTEM) { addToken(); if (myBuilder.getTokenType() == XML_ATTRIBUTE_VALUE_TOKEN) { addToken(); } } else if (myBuilder.getTokenType() == XML_DOCTYPE_PUBLIC) { addToken(); if (myBuilder.getTokenType() == XML_ATTRIBUTE_VALUE_TOKEN) { addToken(); } if (myBuilder.getTokenType() == XML_ATTRIBUTE_VALUE_TOKEN) { addToken(); } } if (myBuilder.getTokenType() == XML_MARKUP_START) { parseMarkupDecl(); } if (myBuilder.getTokenType() != XML_DOCTYPE_END) { docType.done(XML_DOCTYPE); return; } addToken(); docType.done(XML_DOCTYPE); }