Changeset 3533


Ignore:
Timestamp:
Oct 21, 2013, 5:16:39 PM (5 years ago)
Author:
shiyangy
Message:

python templete checked in

File:
1 edited

Legend:

Unmodified
Added
Removed
  • proto/xmlschema/parabix2_validation_cc.py

    r3527 r3533  
    190190class Output():
    191191        matches = 0
     192        tem = 0
    192193
    193194def Classify_bytes_Validate_utf8(basis_bits, lex, u8):
     
    671672        @cc_code
    672673       
    673 def Validation_1(lex, output):
     674def Validation_2(lex, output):
    674675        m0=0
    675676        m1=0
    676677        m2=0
    677678        m0=~0
    678         m0 = pablo.Advance((m0 & lex.cc1))
    679679        m0 = pablo.Advance((m0 & lex.cc2))
    680         m0 = pablo.Advance((m0 & lex.tag_closing))
    681680        m0 = pablo.Advance((m0 & lex.cc3))
    682681        m0 = pablo.Advance((m0 & lex.tag_closing))
     682        m0 = pablo.Advance((m0 & lex.cc4))
     683        m0 = pablo.Advance((m0 & lex.tag_closing))
    683684        m1 = m0
    684         m1 = pablo.Advance((m1 & lex.cc8))
     685        m1 = pablo.Advance((m1 & lex.cc9))
    685686        m1 = pablo.Advance((m1 & lex.tag_closing))
    686687        m0 = m1
    687688        m1 = m0
    688         m1 = pablo.Advance((m1 & lex.cc8))
     689        m1 = pablo.Advance((m1 & lex.cc9))
    689690        m1 = pablo.Advance((m1 & lex.tag_closing))
    690691        while (~m0 & m1):
    691692                        m0 = (m0 | m1)
    692                         m1 = pablo.Advance((m1 & lex.cc8))
     693                        m1 = pablo.Advance((m1 & lex.cc9))
    693694                        m1 = pablo.Advance((m1 & lex.tag_closing))
    694695        m0 = pablo.Advance((m0 & lex.tag_closing))
    695696        output.matches = m0
    696        
    697 def Validation_3(lex, output):
     697        output.matches = m0 ^ lex.cc2
     698        if output.matches:
     699                error_tracker.NoteError("Element_2 error found", output.matches)
     700       
     701def Validation_4(lex, output):
    698702        m0=0
    699703        m0=~0
    700         m0 = pablo.Advance((m0 & lex.cc3))
    701704        m0 = pablo.Advance((m0 & lex.cc4))
    702         m0 = pablo.Advance((m0 & lex.tag_closing))
    703705        m0 = pablo.Advance((m0 & lex.cc5))
    704706        m0 = pablo.Advance((m0 & lex.tag_closing))
     
    707709        m0 = pablo.Advance((m0 & lex.cc7))
    708710        m0 = pablo.Advance((m0 & lex.tag_closing))
    709         m0 = pablo.Advance((m0 & lex.tag_closing))
    710         output.matches = m0     
    711        
    712 def Validation_8(lex, output):
     711        m0 = pablo.Advance((m0 & lex.cc8))
     712        m0 = pablo.Advance((m0 & lex.tag_closing))
     713        m0 = pablo.Advance((m0 & lex.tag_closing))
     714        output.matches = m0
     715        output.matches = m0 ^ lex.cc4
     716        if output.matches:
     717                error_tracker.NoteError("Element_4 error found", output.matches)
     718       
     719def Validation_9(lex, output):
    713720        m0=0
    714721        m1=0
    715722        m2=0
    716723        m0=~0
    717         m0 = pablo.Advance((m0 & lex.cc8))
    718724        m0 = pablo.Advance((m0 & lex.cc9))
     725        m0 = pablo.Advance((m0 & lex.cc10))
    719726        m0 = pablo.Advance((m0 & lex.tag_closing))
    720727        m1 = m0
    721         m1 = pablo.Advance((m1 & lex.cc10))
     728        m1 = pablo.Advance((m1 & lex.cc11))
    722729        m1 = pablo.Advance((m1 & lex.tag_closing))
    723730        m0 = (m0 | m1)
    724         m0 = pablo.Advance((m0 & lex.cc11))
    725         m0 = pablo.Advance((m0 & lex.tag_closing))
    726731        m0 = pablo.Advance((m0 & lex.cc12))
    727732        m0 = pablo.Advance((m0 & lex.tag_closing))
     733        m0 = pablo.Advance((m0 & lex.cc13))
     734        m0 = pablo.Advance((m0 & lex.tag_closing))
    728735        m0 = pablo.Advance((m0 & lex.tag_closing))
    729736        output.matches = m0
     737        output.matches = m0 ^ lex.cc9
     738        if output.matches:
     739                error_tracker.NoteError("Element_9 error found", output.matches)
    730740       
    731741def Validate_content_5(lex, output):
     
    764774        m0 = m9
    765775        m0 = pablo.MatchStar(m0, lex.Digit)
     776        output.tem = m9
     777        temp = m0
    766778        m11 = m0
    767779        m11 = pablo.Advance((m11 & lex.E_and_e))
     
    777789        output.matches = 0
    778790        all_matches = m0
    779         output.matches = m0
     791#       output.matches = m0
     792        output.matches = temp
     793#       output.matches = m0 ^ pablo.Advance(lex.content_end)
    780794#       if all_matches:
    781795                # Find the last match on each line and filter out all others
Note: See TracChangeset for help on using the changeset viewer.