public override void parse(XmlBContext ctxt, string endingTag)
{
#pragma warning disable 0168, 0219
int indicator = 0;
char quoteChar;
string tempStr = null;
bool fl759;
bool fl760;
bool fl761;
bool fl762;
bool fl763;
bool fl764;
bool fl765;
bool fl766;
bool fl767;
bool fl768;
bool fl769;
#pragma warning restore 0168, 0219
ctxt.skipWhiteSpace();
{
// Accept Attributes
fl759 = false ;
fl760 = false ;
fl761 = false ;
fl762 = false ;
fl763 = false ;
fl764 = false ;
fl765 = false ;
fl766 = false ;
fl767 = false ;
fl768 = false ;
fl769 = true ;
while (fl769) { // BeginLoop
switch (ctxt.current()) {
case 'V':
{
ctxt.advance();
if (ctxt.lookAheadString("erified=")){
indicator = 763;
} else {
indicator = 770;
} // If
break;
} // Case
case 'U':
{
ctxt.advance();
if (ctxt.lookAheadString("pdates=")){
indicator = 767;
} else {
indicator = 770;
} // If
break;
} // Case
case 'T':
{
ctxt.advance();
if (ctxt.lookAheadString("ypeName=")){
indicator = 759;
} else {
indicator = 770;
} // If
break;
} // Case
case 'N':
{
ctxt.advance();
switch (ctxt.current()) {
case 'e':
{
ctxt.advance();
if (ctxt.lookAheadString("edsRequirement=")){
indicator = 764;
} else {
indicator = 770;
} // If
break;
} // Case
case 'a':
{
ctxt.advance();
if (ctxt.lookAhead3('m','e','=')){
indicator = 765;
} else {
indicator = 770;
} // If
break;
} // Case
default:
indicator = 770;
break;
} // Switch
break;
} // Case
case 'M':
{
ctxt.advance();
if (ctxt.lookAheadString("ode=")){
indicator = 761;
} else {
indicator = 770;
} // If
break;
} // Case
case 'I':
{
ctxt.advance();
switch (ctxt.current()) {
case 's':
{
ctxt.advance();
if (ctxt.lookAheadString("Removed=")){
indicator = 768;
} else {
indicator = 770;
} // If
break;
} // Case
case 'm':
{
ctxt.advance();
if (ctxt.lookAheadString("plemented=")){
indicator = 762;
} else {
indicator = 770;
} // If
break;
} // Case
default:
indicator = 770;
break;
} // Switch
break;
} // Case
case 'G':
{
ctxt.advance();
if (ctxt.lookAheadString("uid=")){
indicator = 766;
} else {
indicator = 770;
} // If
break;
} // Case
case 'D':
{
ctxt.advance();
if (ctxt.lookAheadString("efault=")){
indicator = 760;
} else {
indicator = 770;
} // If
break;
} // Case
default:
indicator = 770;
break;
} // Switch
switch (indicator) {
case 759: {
// Handling attribute TypeName
// Also handles alien attributes with prefix TypeName
if (fl759){
ctxt.fail ("Duplicate attribute: TypeName");
} // If
fl759 = true ;
quoteChar = ctxt.acceptQuote();
this.setTypeName((acceptor.lAcceptPcData(ctxt,-1, quoteChar, XmlBContext.WS_PRESERVE)));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 760: {
// Handling attribute Default
// Also handles alien attributes with prefix Default
if (fl760){
ctxt.fail ("Duplicate attribute: Default");
} // If
fl760 = true ;
quoteChar = ctxt.acceptQuote();
this.setDefault((acceptor.lAcceptPcData(ctxt,-1, quoteChar, XmlBContext.WS_PRESERVE)));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 761: {
// Handling attribute Mode
// Also handles alien attributes with prefix Mode
if (fl761){
ctxt.fail ("Duplicate attribute: Mode");
} // If
fl761 = true ;
quoteChar = ctxt.acceptQuote();
this.setMode(acceptor.lAcceptEnum_VariableModeEnumType(ctxt));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 762: {
// Handling attribute Implemented
// Also handles alien attributes with prefix Implemented
if (fl762){
ctxt.fail ("Duplicate attribute: Implemented");
} // If
fl762 = true ;
quoteChar = ctxt.acceptQuote();
this.setImplemented(acceptor.lAcceptBoolean(ctxt));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 763: {
// Handling attribute Verified
// Also handles alien attributes with prefix Verified
if (fl763){
ctxt.fail ("Duplicate attribute: Verified");
} // If
fl763 = true ;
quoteChar = ctxt.acceptQuote();
this.setVerified(acceptor.lAcceptBoolean(ctxt));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 764: {
// Handling attribute NeedsRequirement
// Also handles alien attributes with prefix NeedsRequirement
if (fl764){
ctxt.fail ("Duplicate attribute: NeedsRequirement");
} // If
fl764 = true ;
quoteChar = ctxt.acceptQuote();
this.setNeedsRequirement(acceptor.lAcceptBoolean(ctxt));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 765: {
// Handling attribute Name
// Also handles alien attributes with prefix Name
if (fl765){
ctxt.fail ("Duplicate attribute: Name");
} // If
fl765 = true ;
quoteChar = ctxt.acceptQuote();
this.setName((acceptor.lAcceptPcData(ctxt,-1, quoteChar, XmlBContext.WS_PRESERVE)));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 766: {
// Handling attribute Guid
// Also handles alien attributes with prefix Guid
if (fl766){
ctxt.fail ("Duplicate attribute: Guid");
} // If
fl766 = true ;
quoteChar = ctxt.acceptQuote();
this.setGuid((acceptor.lAcceptPcData(ctxt,-1, quoteChar, XmlBContext.WS_PRESERVE)));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 767: {
// Handling attribute Updates
// Also handles alien attributes with prefix Updates
if (fl767){
ctxt.fail ("Duplicate attribute: Updates");
} // If
fl767 = true ;
quoteChar = ctxt.acceptQuote();
this.setUpdates((acceptor.lAcceptPcData(ctxt,-1, quoteChar, XmlBContext.WS_PRESERVE)));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
case 768: {
// Handling attribute IsRemoved
// Also handles alien attributes with prefix IsRemoved
if (fl768){
ctxt.fail ("Duplicate attribute: IsRemoved");
} // If
fl768 = true ;
quoteChar = ctxt.acceptQuote();
this.setIsRemoved(acceptor.lAcceptBoolean(ctxt));
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
break;
} // End of dispatch label
// Final default label
case 770: {
// Taking ignorable attributes into account
if (ctxt.isAlNum()){
ctxt.skipTill ('=');
ctxt.advance();
ctxt.skipWhiteSpace();
quoteChar = ctxt.acceptQuote();
ctxt.skipTill (quoteChar);
ctxt.accept(quoteChar);
ctxt.skipWhiteSpace();
} else {
if (!fl759){
ctxt.fail ("Mandatory attribute missing: TypeName in StructureElement");
} // If
if (!fl760){
this.setDefault("");
} // If
if (!fl761){
this.setMode(acceptor.VariableModeEnumType.aInternal);
} // If
if (!fl762){
this.setImplemented( false);
} // If
if (!fl763){
this.setVerified( false);
} // If
if (!fl764){
this.setNeedsRequirement( true);
} // If
if (!fl768){
this.setIsRemoved( false);
} // If
fl769 = false ;
} // If
break;
} // End of dispatch label
} // Dispatch
} // While
}
ctxt.skipWhiteSpace();
if (ctxt.current() == '/'){
ctxt.advance();
ctxt.accept('>');
} else {
ctxt.accept('>');
parseBody(ctxt);
ctxt.acceptString(endingTag);
// If formula empty
} // If
}