def ipv4address(): return [ NonTerminal("dec-octet"), ".", NonTerminal("dec-octet"), ".", NonTerminal("dec-octet"), ".", NonTerminal("dec-octet") ]
def global_number_digits(): return Sequence( "+", ZeroOrMore(NonTerminal("phonedigit")), DIGIT(), ZeroOrMore(NonTerminal("phonedigit")) )
def local_number(): return Sequence( local_number_digits(), ZeroOrMore(NonTerminal("par")), context(), ZeroOrMore(NonTerminal("par")) )
def global_number(): return Sequence(global_number_digits(), ZeroOrMore(NonTerminal("par")))
def ip_literal(): return [ "[", Choice(0, NonTerminal("IPv6address"), NonTerminal("IPvFuture")), "]" ]
def ietf_token(): return NonTerminal("ietf-token")
def iana_token(): return NonTerminal("iana-token")
def isdn_subaddress(): return Sequence(";isub=", OneOrMore(NonTerminal("uric")))
def authority(): return [ Optional(Sequence(NonTerminal("userinfo"), "@")), NonTerminal("host"), Optional(Sequence(":", NonTerminal("port"))) ]
def host(): return Choice(1, Sequence(*ip_literal()), Sequence(*ipv4address()), NonTerminal("reg-name"))
def port(): return NonTerminal("port")
def path_empty(): return NonTerminal("path-empty")
def uri(): return Sequence(NonTerminal("scheme"), ":", Group(hier_part(), "hier-part"), Optional(Sequence("?", NonTerminal("query"))), Optional(Sequence("#", NonTerminal("fragment"))))
def path_rootless(): return Sequence(NonTerminal("segment-nz"), Optional(Sequence("/", NonTerminal("segment"))))
def path_absolute(): return Sequence( "/", Optional( Sequence(NonTerminal("segment-nz"), Optional(Sequence("/", NonTerminal("segment"))))))
def path_abempty(): return Optional(Sequence("/", NonTerminal("segment")))
def pvalue(): return OneOrMore(NonTerminal("paramchar"))
def DIGIT(): return NonTerminal("DIGIT")
def context(): return NonTerminal("context")
def alphanum(): return NonTerminal("ALPHANUM")
def ALPHA(): return NonTerminal("ALPHA")
def ipvfuture(): return [ "v", OneOrMore(NonTerminal("HEXDIG")), ".", OneOrMore(Choice(0, unreserved(), sub_delims(), ":")) ]
def HEXDIG(): return NonTerminal("HEXDIG")
def local_number_digits(): return Sequence( ZeroOrMore(NonTerminal("phonedigit_hex")), Choice(0, HEXDIG(), "*", "#"), ZeroOrMore(NonTerminal("phonedigit_hex")) )
def quoted_string(): return Sequence('"', NonTerminal("ASCII"), '"')
def context(): return Sequence(";phone-context=", NonTerminal("descriptor"))
def x_token(): return Sequence(Choice(0, "X-", "x-"), NonTerminal("token"))
def extension(): return Sequence(";ext=", OneOrMore(NonTerminal("phonedigit")))
Optional(Sequence(copy(whitespace), Choice(0, *modifiers)), skip=SKIP)) return Sequence( name, ZeroOrMore(Sequence( copy(whitespace), Choice(0, *modifiers), ), skip=SKIP), ) complete = Diagram( ZeroOrMore(Choice( 0, NonTerminal('literal'), Sequence( '[', Choice( 1, '[', Sequence( Optional(copy(whitespace), skip=SKIP), Choice( 0, generate_sequence( 'month', copy(padding), copy(month_repr), copy(case_sensitive), ), generate_sequence(
def ipv6address(): return Choice( 0, Sequence(NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("ls32")), Sequence("::", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("ls32")), Sequence(Optional(NonTerminal("h16")), "::", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("ls32")), Sequence( Optional( Sequence(Optional(Sequence(NonTerminal("h16"), ":")), NonTerminal("h16"))), "::", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("ls32")), Sequence( Optional( Sequence( Optional( Sequence(NonTerminal("h16"), ":", Optional(Sequence(NonTerminal("h16"), ":")))), NonTerminal("h16"))), "::", NonTerminal("h16"), ":", NonTerminal("h16"), ":", NonTerminal("ls32")), Sequence( Optional( Sequence( Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional(Sequence(NonTerminal("h16"), ":")))))), NonTerminal("h16"))), "::", NonTerminal("h16"), ":", NonTerminal("ls32")), Sequence( Optional( Sequence( Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":")))))))), NonTerminal("h16"))), "::", NonTerminal("ls32")), Sequence( Optional( Sequence( Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":")))))))))), NonTerminal("h16"))), "::", NonTerminal("h16")), Sequence( Optional( Sequence( Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal("h16"), ":", Optional( Sequence( NonTerminal( "h16"), ":")))))))) )))), NonTerminal("h16"))), "::"))