Object

laika.parse.uri

URIParsers

Related Doc: package uri

Permalink

object URIParsers

Parses URIs as defined in RFC 3986 and email addresses as defined in RFC 6068, 5322 and 3986 with base types defined in RFC 2234.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. URIParsers
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. val addrSpec: Parser[String]

    Permalink

    Parses a single email address as defined in RFC 6068.

    Parses a single email address as defined in RFC 6068.

    addr-spec = local-part "@" domain
  5. val alpha: Characters[String]

    Permalink

    Parses letters according to RFC 2234.

    Parses letters according to RFC 2234.

    ALPHA =  %x41-5A / %x61-7A ; A-Z / a-z
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. val authority: Parser[String]

    Permalink

    Parses the authority part of a URI as defined in RFC 3986.

    Parses the authority part of a URI as defined in RFC 3986.

    authority = [ userinfo "@" ] host [ ":" port ]
  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. val digit: Characters[String]

    Permalink

    Parses digits according to RFC 2234.

    Parses digits according to RFC 2234.

    DIGIT =  %x30-39; 0-9
  10. val domain: Parser[String]

    Permalink

    Parses the domain portion of an email address as defined in RFC 6068.

    Parses the domain portion of an email address as defined in RFC 6068.

    domain       = dot-atom-text / "[" *dtext-no-obs "]"
    dtext-no-obs = %d33-90 / ; Printable US-ASCII
                   %d94-126  ; characters not including
                             ; "[", "]", or "\"
  11. val dotAtomText: Parser[String]

    Permalink

    Parses a dot-atom-text sequence as defined in RFC 5322.

    Parses a dot-atom-text sequence as defined in RFC 5322.

    dot-atom-text   =   1*atext *("." 1*atext)
    
     atext           =   ALPHA / DIGIT /    ; Printable US-ASCII
                      "!" / "#" /        ;  characters not including
                      "$" / "%" /        ;  specials.  Used for atoms.
                      "&" / "'" /
                      "*" / "+" /
                      "-" / "/" /
                      "=" / "?" /
                      "^" / "_" /
                      "`" / "{" /
                      "|" / "}" /
                      "~"
  12. val emailAddress: Parser[String]

    Permalink

    Parses a mailto URI without the scheme part as defined in RFC 6068.

  13. val emailURI: Parser[String]

    Permalink

    Parses a full mailto URI as defined in RFC 6068.

    Parses a full mailto URI as defined in RFC 6068.

    mailtoURI = "mailto:" [ to ] [ hfields ]
  14. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  16. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. def flatten(result: Any): String

    Permalink

    Flattens the result from various combinators, including the repX variants and ~ into a single string.

  18. val fragment: Parser[String]

    Permalink

    Parses the fragment part of a URI as defined in RFC 3986.

    Parses the fragment part of a URI as defined in RFC 3986.

    fragment = *( pchar / "/" / "?" )
  19. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  20. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  21. val hexdig: Characters[String]

    Permalink

    Parses a hexadecimal value according to RFC 2234.

    Parses a hexadecimal value according to RFC 2234.

    HEXDIG = DIGIT / "A" / "B" / "C" / "D" / "E" / "F"
  22. val hfields: Parser[String]

    Permalink

    Parses header fields of an email address as defined in RFC 6068.

    Parses header fields of an email address as defined in RFC 6068.

    hfields      = "?" hfield *( "&" hfield )
    hfield       = hfname "=" hfvalue
    hfname       = *qchar
    hfvalue      = *qchar
    
    qchar        = unreserved / pct-encoded / some-delims
    some-delims  = "!" / "$" / "'" / "(" / ")" / "*"
                 / "+" / "," / ";" / ":" / "@"
  23. val hierPart: Parser[String]

    Permalink

    Parses the hierarchical part of a URI with an authority component as defined in RFC 3986, but only the variant including an authority component.

    Parses the hierarchical part of a URI with an authority component as defined in RFC 3986, but only the variant including an authority component.

    hier-part     = "//" authority path-abempty
                  / path-absolute ; excluded
                  / path-rootless ; excluded
                  / path-empty    ; excluded
  24. val host: Parser[String]

    Permalink

    Parses a host as defined in RFC 3986.

    Parses a host as defined in RFC 3986.

    host = IP-literal / IPv4address / reg-name
  25. val httpUri: Parser[String]

    Permalink

    Parses a full HTTP URI including the scheme part and an authority component as defined in RFC 3986.

  26. val httpUriNoScheme: Parser[String]

    Permalink

    Parses an HTTP or HTTPS URI with an authority component, but without the scheme part (therefore starting with "//") as defined in RFC 3986.

    Parses an HTTP or HTTPS URI with an authority component, but without the scheme part (therefore starting with "//") as defined in RFC 3986.

    URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ]
  27. val httpsUri: Parser[String]

    Permalink

    Parses a full HTTPS URI including the scheme part and an authority component as defined in RFC 3986.

  28. val ipLiteral: Parser[String]

    Permalink

    Parses an ip literal as defined in RFC 3986.

    Parses an ip literal as defined in RFC 3986.

    IP-literal = "[" ( IPv6address / IPvFuture  ) "]"
  29. val ipv4address: Parser[String]

    Permalink

    Parses an IPv4 address as defined in RFC 3986.

    Parses an IPv4 address as defined in RFC 3986.

    IPv4address   = dec-octet "." dec-octet "." dec-octet "." dec-octet
    
    dec-octet     = DIGIT                 ; 0-9
                  / %x31-39 DIGIT         ; 10-99
                  / "1" 2DIGIT            ; 100-199
                  / "2" %x30-34 DIGIT     ; 200-249
                  / "25" %x30-35          ; 250-255

    The implementation has been simplified to parse a 3-digit number and check its value.

  30. val ipv6address: Parser[~[Any, Any]]

    Permalink

    Parses an IPv6 address as defined in RFC 3986.

    Parses an IPv6 address as defined in RFC 3986.

    IPv6address  =                            6( h16 ":" ) ls32
                 /                       "::" 5( h16 ":" ) ls32
                 / [               h16 ] "::" 4( h16 ":" ) ls32
                 / [ *1( h16 ":" ) h16 ] "::" 3( h16 ":" ) ls32
                 / [ *2( h16 ":" ) h16 ] "::" 2( h16 ":" ) ls32
                 / [ *3( h16 ":" ) h16 ] "::"    h16 ":"   ls32
                 / [ *4( h16 ":" ) h16 ] "::"              ls32
                 / [ *5( h16 ":" ) h16 ] "::"              h16
                 / [ *6( h16 ":" ) h16 ] "::"
    
    h16          = 1*4HEXDIG
    
    ls32         = ( h16 ":" h16 ) / IPv4address
  31. val ipvFuture: Parser[~[~[~[Char, String], Char], List[Any]]]

    Permalink

    Parses a future IP address as defined in RFC 3986.

    Parses a future IP address as defined in RFC 3986.

    IPvFuture = "v" 1*HEXDIG "." 1*( unreserved / sub-delims / ":" )
  32. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  33. val localPart: Parser[String]

    Permalink

    Parses the local part of an email address (before the @), with one deviation from RFC 6068: a quoted string is not allowed.

    Parses the local part of an email address (before the @), with one deviation from RFC 6068: a quoted string is not allowed. It is rarely used, not supported by the reStructuredText reference parser and would be hard to combine within text markup as it allows for whitespace and line break characters.

    local-part = dot-atom-text / quoted-string ; quoted-string omitted
  34. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  35. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  36. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  37. val pChar: Parser[Any]

    Permalink

    Parses one path character as defined in RFC 3986.

    Parses one path character as defined in RFC 3986.

    pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
  38. val path: Parser[String]

    Permalink

    Parses the path of a URI as defined in RFC 3986, but only the path variant following an authority component.

    Parses the path of a URI as defined in RFC 3986, but only the path variant following an authority component.

    path-abempty  = *( "/" segment )
    
    segment       = *pchar
  39. val pctEncoded: Parser[~[Char, String]]

    Permalink

    Parses a percent-encoded character as defined in RFC 3986.

    Parses a percent-encoded character as defined in RFC 3986.

    pct-encoded = "%" HEXDIG HEXDIG
  40. val port: Parser[String]

    Permalink

    Parses a port as defined in RFC 3986, except for requiring at least one digit; instead the port is defined as optional in a higher level combinator.

    Parses a port as defined in RFC 3986, except for requiring at least one digit; instead the port is defined as optional in a higher level combinator.

    port = *DIGIT
  41. val query: Parser[String]

    Permalink

    Parses the query part of a URI as defined in RFC 3986.

    Parses the query part of a URI as defined in RFC 3986.

    query = *( pchar / "/" / "?" )
  42. val regName: Parser[String]

    Permalink

    Parses a server name as defined in RFC 3986.

    Parses a server name as defined in RFC 3986.

    reg-name = *( unreserved / pct-encoded / sub-delims )
  43. val subDelims: Parser[String]

    Permalink

    Parses a single sub-delimiter as defined in RFC 3986.

    Parses a single sub-delimiter as defined in RFC 3986.

    sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
                     / "*" / "+" / "," / ";" / "="
  44. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  45. val to: Parser[String]

    Permalink

    Parses a sequence of email addresses as defined in RFC 6068.

    Parses a sequence of email addresses as defined in RFC 6068.

    to = addr-spec *("," addr-spec )
  46. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  47. val unreserved: Parser[String]

    Permalink

    Parses a single unreserved character as defined in RFC 3986.

    Parses a single unreserved character as defined in RFC 3986.

    unreserved  = ALPHA / DIGIT / "-" / "." / "_" / "~"
  48. val userInfo: Parser[String]

    Permalink

    Parses the user info portion of a URI as defined in RFC 3986.

    Parses the user info portion of a URI as defined in RFC 3986.

    userinfo = *( unreserved / pct-encoded / sub-delims / ":" )
  49. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  50. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  51. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped