Packages

o

laika.parse.uri

URIParsers

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
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val addrSpec: Parser[String]

    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]

    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
    Definition Classes
    Any
  7. val authority: Parser[String]

    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
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  9. val digit: Characters[String]

    Parses digits according to RFC 2234.

    Parses digits according to RFC 2234.

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

    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]

    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]

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

  13. val emailURI: Parser[String]

    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
    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  16. val fragment: Parser[String]

    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 / "/" / "?" )
  17. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  18. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  19. val hexdig: Characters[String]

    Parses a hexadecimal value according to RFC 2234.

    Parses a hexadecimal value according to RFC 2234.

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

    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  = "!" / "$" / "'" / "(" / ")" / "*"
                 / "+" / "," / ";" / ":" / "@"
  21. val hierPart: Parser[String]

    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
  22. val host: Parser[String]

    Parses a host as defined in RFC 3986.

    Parses a host as defined in RFC 3986.

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

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

  24. val httpUriNoScheme: Parser[String]

    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 ]
  25. val httpsUri: Parser[String]

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

  26. val ipLiteral: Parser[String]

    Parses an ip literal as defined in RFC 3986.

    Parses an ip literal as defined in RFC 3986.

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

    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.

  28. val ipv6address: Parser[String]

    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
  29. val ipvFuture: Parser[String]

    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 / ":" )
  30. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  31. val localPart: Parser[String]

    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
  32. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  33. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  34. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  35. val pChar: Parser[String]

    Parses one path character as defined in RFC 3986.

    Parses one path character as defined in RFC 3986.

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

    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
  37. val pctEncoded: Parser[String]

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

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

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

    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
  39. val query: Parser[String]

    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 / "/" / "?" )
  40. val regName: Parser[String]

    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 )
  41. val subDelims: Parser[String]

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

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

    sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
                     / "*" / "+" / "," / ";" / "="
  42. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  43. val to: Parser[String]

    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 )
  44. def toString(): String
    Definition Classes
    AnyRef → Any
  45. val unreserved: Parser[String]

    Parses a single unreserved character as defined in RFC 3986.

    Parses a single unreserved character as defined in RFC 3986.

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

    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 / ":" )
  47. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  48. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  49. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped