Packages

object JSON extends Parser

This object provides a simple interface to the JSON parser class. The default conversion for numerics is into a double. If you wish to override this behavior at the global level, you can set the globalNumberParser property to your own (String => Any) function. If you only want to override at the per-thread level then you can set the perThreadNumberParser property to your function. For example:

val myConversionFunc = {input : String => BigDecimal(input)}

// Global override
JSON.globalNumberParser = myConversionFunc

// Per-thread override
JSON.perThreadNumberParser = myConversionFunc
Annotations
@deprecated
Deprecated

(Since version 1.0.6) Use The Scala Library Index to find alternatives: https://index.scala-lang.org/

Linear Supertypes
json.Parser, ImplicitConversions, StdTokenParsers, TokenParsers, Parsers, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JSON
  2. Parser
  3. ImplicitConversions
  4. StdTokenParsers
  5. TokenParsers
  6. Parsers
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type Elem = Lexer.Token
    Definition Classes
    TokenParsers → Parsers
  2. case class Error extends NoSuccess with Product with Serializable
    Definition Classes
    Parsers
  3. case class Failure extends NoSuccess with Product with Serializable
    Definition Classes
    Parsers
  4. type Input = Reader[Elem]
    Definition Classes
    Parsers
  5. sealed abstract class NoSuccess extends ParseResult[Nothing]
    Definition Classes
    Parsers
  6. type NumericParser = (String) ⇒ Any

    Type signature for functions that can parse numeric literals

    Type signature for functions that can parse numeric literals

    Definition Classes
    Parser
  7. trait OnceParser[+T] extends Parser[T]
    Definition Classes
    Parsers
  8. sealed abstract class ParseResult[+T] extends AnyRef
    Definition Classes
    Parsers
  9. abstract class Parser[+T] extends (Input) ⇒ ParseResult[T]
    Definition Classes
    Parsers
  10. case class Success[+T] extends ParseResult[T] with Product with Serializable
    Definition Classes
    Parsers
  11. type Tokens = Lexer
    Definition Classes
    Parser → StdTokenParsers → TokenParsers
  12. case class ~[+a, +b] extends Product with Serializable
    Definition Classes
    Parsers

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. def OnceParser[T](f: (Input) ⇒ ParseResult[T]): Parser[T] with OnceParser[T]
    Definition Classes
    Parsers
  5. def Parser[T](f: (Input) ⇒ ParseResult[T]): Parser[T]
    Definition Classes
    Parsers
  6. def accept[U](expected: String, f: PartialFunction[Elem, U]): Parser[U]
    Definition Classes
    Parsers
  7. def accept[ES](es: ES)(implicit f: (ES) ⇒ List[Elem]): Parser[List[Elem]]
    Definition Classes
    Parsers
  8. implicit def accept(e: Elem): Parser[Elem]
    Definition Classes
    Parsers
  9. def acceptIf(p: (Elem) ⇒ Boolean)(err: (Elem) ⇒ String): Parser[Elem]
    Definition Classes
    Parsers
  10. def acceptMatch[U](expected: String, f: PartialFunction[Elem, U]): Parser[U]
    Definition Classes
    Parsers
  11. def acceptSeq[ES](es: ES)(implicit f: (ES) ⇒ Iterable[Elem]): Parser[List[Elem]]
    Definition Classes
    Parsers
  12. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  13. def chainl1[T, U](first: ⇒ Parser[T], p: ⇒ Parser[U], q: ⇒ Parser[(T, U) ⇒ T]): Parser[T]
    Definition Classes
    Parsers
  14. def chainl1[T](p: ⇒ Parser[T], q: ⇒ Parser[(T, T) ⇒ T]): Parser[T]
    Definition Classes
    Parsers
  15. def chainr1[T, U](p: ⇒ Parser[T], q: ⇒ Parser[(T, U) ⇒ U], combine: (T, U) ⇒ U, first: U): Parser[U]
    Definition Classes
    Parsers
  16. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  17. def commit[T](p: ⇒ Parser[T]): Parser[T]
    Definition Classes
    Parsers
  18. var defaultNumberParser: NumericParser
    Attributes
    protected
    Definition Classes
    Parser
  19. def elem(e: Elem): Parser[Elem]
    Definition Classes
    Parsers
  20. def elem(kind: String, p: (Elem) ⇒ Boolean): Parser[Elem]
    Definition Classes
    Parsers
  21. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  23. def err(msg: String): Parser[Nothing]
    Definition Classes
    Parsers
  24. def failure(msg: String): Parser[Nothing]
    Definition Classes
    Parsers
  25. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  26. implicit def flatten2[A, B, C](f: (A, B) ⇒ C): (~[A, B]) ⇒ C
    Definition Classes
    ImplicitConversions
  27. implicit def flatten3[A, B, C, D](f: (A, B, C) ⇒ D): (~[~[A, B], C]) ⇒ D
    Definition Classes
    ImplicitConversions
  28. implicit def flatten4[A, B, C, D, E](f: (A, B, C, D) ⇒ E): (~[~[~[A, B], C], D]) ⇒ E
    Definition Classes
    ImplicitConversions
  29. implicit def flatten5[A, B, C, D, E, F](f: (A, B, C, D, E) ⇒ F): (~[~[~[~[A, B], C], D], E]) ⇒ F
    Definition Classes
    ImplicitConversions
  30. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  31. def globalNumberParser: NumericParser
  32. def globalNumberParser_=(f: NumericParser): Unit

    The global (VM) default function for converting a string to a numeric value.

  33. def guard[T](p: ⇒ Parser[T]): Parser[T]
    Definition Classes
    Parsers
  34. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  35. implicit def headOptionTailToFunList[A, T](f: (List[A]) ⇒ T): (~[A, Option[List[A]]]) ⇒ T
    Definition Classes
    ImplicitConversions
  36. def ident: Parser[String]
    Definition Classes
    StdTokenParsers
  37. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  38. def jsonArray: Parser[JSONArray]
    Definition Classes
    Parser
  39. def jsonObj: Parser[JSONObject]
    Definition Classes
    Parser
  40. implicit def keyword(chars: String): Parser[String]
    Definition Classes
    StdTokenParsers
  41. val keywordCache: HashMap[String, Parser[String]]
    Attributes
    protected
    Definition Classes
    StdTokenParsers
  42. val lexical: Lexer
    Definition Classes
    Parser → TokenParsers
  43. def log[T](p: ⇒ Parser[T])(name: String): Parser[T]
    Definition Classes
    Parsers
  44. def mkList[T]: (~[T, List[T]]) ⇒ collection.immutable.List[T]
    Definition Classes
    Parsers
  45. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  46. def not[T](p: ⇒ Parser[T]): Parser[Unit]
    Definition Classes
    Parsers
  47. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  48. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  49. def number: Parser[Any]
    Definition Classes
    Parser
  50. val numberParser: ThreadLocal[NumericParser]
    Attributes
    protected
    Definition Classes
    Parser
  51. def numericLit: Parser[String]
    Definition Classes
    StdTokenParsers
  52. def objEntry: Parser[(String, Any)]
    Definition Classes
    Parser
  53. def opt[T](p: ⇒ Parser[T]): Parser[Option[T]]
    Definition Classes
    Parsers
  54. def parseFull(input: String): Option[Any]

    Parse the given JSON string and return either a List[Any] if the JSON string specifies an Array, or a Map[String,Any] if the JSON string specifies an object.

    Parse the given JSON string and return either a List[Any] if the JSON string specifies an Array, or a Map[String,Any] if the JSON string specifies an object.

    input

    the given JSON string.

    returns

    an optional list or map.

  55. def parseRaw(input: String): Option[JSONType]

    Parse the given JSON string and return a list of elements.

    Parse the given JSON string and return a list of elements. If the string is a JSON object it will be a JSONObject. If it's a JSON array it will be a JSONArray.

    input

    the given JSON string.

    returns

    an optional JSONType element.

  56. def perThreadNumberParser: NumericParser
  57. def perThreadNumberParser_=(f: NumericParser): Unit

    Defines the function used to convert a numeric string literal into a numeric format on a per-thread basis.

    Defines the function used to convert a numeric string literal into a numeric format on a per-thread basis. Use globalNumberParser for a global override.

  58. def phrase[T](p: Parser[T]): Parser[T]
    Definition Classes
    Parsers
  59. def positioned[T <: Positional](p: ⇒ Parser[T]): Parser[T]
    Definition Classes
    Parsers
  60. def rep[T](p: ⇒ Parser[T]): Parser[List[T]]
    Definition Classes
    Parsers
  61. def rep1[T](first: ⇒ Parser[T], p0: ⇒ Parser[T]): Parser[List[T]]
    Definition Classes
    Parsers
  62. def rep1[T](p: ⇒ Parser[T]): Parser[List[T]]
    Definition Classes
    Parsers
  63. def rep1sep[T](p: ⇒ Parser[T], q: ⇒ Parser[Any]): Parser[List[T]]
    Definition Classes
    Parsers
  64. def repN[T](num: Int, p: ⇒ Parser[T]): Parser[List[T]]
    Definition Classes
    Parsers
  65. def repNM[T](n: Int, m: Int, p: Parser[T], sep: Parser[Any]): Parser[List[T]]
    Definition Classes
    Parsers
  66. def repsep[T](p: ⇒ Parser[T], q: ⇒ Parser[Any]): Parser[List[T]]
    Definition Classes
    Parsers
  67. def resolveType(input: Any): Any

    A utility method to resolve a parsed JSON list into objects or arrays.

    A utility method to resolve a parsed JSON list into objects or arrays. See the parse method for details.

  68. def root: Parser[Product with Serializable with JSONType]
    Definition Classes
    Parser
  69. def stringLit: Parser[String]
    Definition Classes
    StdTokenParsers
  70. def stringVal: Parser[String]
    Definition Classes
    Parser
  71. def success[T](v: T): Parser[T]
    Definition Classes
    Parsers
  72. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  73. def toString(): String
    Definition Classes
    AnyRef → Any
  74. def value: Parser[Any]
    Definition Classes
    Parser
  75. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  76. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  77. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from json.Parser

Inherited from ImplicitConversions

Inherited from StdTokenParsers

Inherited from TokenParsers

Inherited from Parsers

Inherited from AnyRef

Inherited from Any

Ungrouped