abstract class Integer extends AnyRef
This class defines a uniform interface for defining parsers for integer literals, independent of how whitespace should be handled after the literal or whether the literal should allow for negative numbers.
- Source
- Integer.scala
- Since
4.0.0
- Note
implementations of this class found within
Lexermay employ sharing and refine the non-finaldefs in this class intovalorlazy valwhen overriding.
- Alphabetic
- By Inheritance
- Integer
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
binary: Parsley[BigInt]
This parser will parse a single integer literal, which is in binary form (base 2).
This parser will parse a single integer literal, which is in binary form (base 2).
// using signed integers and standard numeric prefixes scala> binary.parse("0b1011") val res0 = Success(BigInt(11)) scala> binary.parse("10") val res2 = Failure(..) // no binary prefix scala> binary.parse("0b22") val res3 = Failure(..) // no other digits
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
Example: -
abstract
def
bounded[T](number: Parsley[BigInt], bits: Bits, radix: Int)(implicit ev: CanHold[self, T]): Parsley[T]
- Attributes
- protected[numeric]
-
abstract
def
decimal: Parsley[BigInt]
This parser will parse a single integer literal, which is in decimal form (base 10).
This parser will parse a single integer literal, which is in decimal form (base 10).
// using signed integers and standard numeric prefixes scala> decimal.parse("103") val res0 = Success(BigInt(103)) scala> decimal.parse("9999999999999999999999999999999999") val res1 = Success(BigInt(9999999999999999999999999999999999)) scala> decimal.parse("1f") val res2 = Failure(..) // no hexadecimal digits supported scala> decimal.parse("0xff") val res3 = Failure(..) // no hexadecimal literals either
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
Example: -
abstract
def
hexadecimal: Parsley[BigInt]
This parser will parse a single integer literal, which is in hexadecimal form (base 16).
This parser will parse a single integer literal, which is in hexadecimal form (base 16).
// using signed integers and standard numeric prefixes scala> hexadecimal.parse("0x103") val res0 = Success(BigInt(259)) scala> hexadecimal.parse("0x9999999999999999999999999999999999") val res1 = Success(BigInt(0x9999999999999999999999999999999999)) scala> hexadecimal.parse("1f") val res2 = Failure(..) // no hexadecimal prefix scala> hexadecimal.parse("0xff") val res3 = Success(BigInt(0xff))
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
Example: -
abstract
def
number: Parsley[BigInt]
This parser will parse a single integer literal, which can be in many forms and bases depending on the configuration.
This parser will parse a single integer literal, which can be in many forms and bases depending on the configuration.
// using signed integers and standard numeric prefixes (and octal, binary, and decimal on) scala> number.parse("0b1011") val res0 = Success(BigInt(11)) scala> number.parse("0o103") val res1 = Success(BigInt(43)) scala> number.parse("10") val res2 = Success(10) scala> number.parse("0xff") val res1 = Failure(..) // configuration specified above does not support hex
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
Example: -
abstract
def
octal: Parsley[BigInt]
This parser will parse a single integer literal, which is in octal form (base 8).
This parser will parse a single integer literal, which is in octal form (base 8).
// using signed integers and standard numeric prefixes scala> octal.parse("0o103") val res0 = Success(BigInt(43)) scala> octal.parse("1f") val res2 = Failure(..) // no hexadecimal digits supported scala> octal.parse("0xff") val res3 = Failure(..) // no hexadecimal literals either
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
Example:
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
_binary: Parsley[BigInt]
- Attributes
- protected[numeric]
-
def
_decimal: Parsley[BigInt]
- Attributes
- protected[numeric]
-
def
_hexadecimal: Parsley[BigInt]
- Attributes
- protected[numeric]
-
def
_number: Parsley[BigInt]
- Attributes
- protected[numeric]
-
def
_octal: Parsley[BigInt]
- Attributes
- protected[numeric]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
final
def
binary16[T](implicit arg0: can_hold_16_bits[T]): Parsley[T]
This parser will behave the same as
binaryexcept it will ensure that the resultingBigIntis a valid 16-bit number.This parser will behave the same as
binaryexcept it will ensure that the resultingBigIntis a valid 16-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Short
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
binary32[T](implicit arg0: can_hold_32_bits[T]): Parsley[T]
This parser will behave the same as
binaryexcept it will ensure that the resultingBigIntis a valid 32-bit number.This parser will behave the same as
binaryexcept it will ensure that the resultingBigIntis a valid 32-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Int
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
binary64[T](implicit arg0: can_hold_64_bits[T]): Parsley[T]
This parser will behave the same as
binaryexcept it will ensure that the resultingBigIntis a valid 64-bit number.This parser will behave the same as
binaryexcept it will ensure that the resultingBigIntis a valid 64-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Long
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
binary8[T](implicit arg0: can_hold_8_bits[T]): Parsley[T]
This parser will behave the same as
binaryexcept it will ensure that the resultingBigIntis a valid 8-bit number.This parser will behave the same as
binaryexcept it will ensure that the resultingBigIntis a valid 8-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Byte
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
decimal16[T](implicit arg0: can_hold_16_bits[T]): Parsley[T]
This parser will behave the same as
decimalexcept it will ensure that the resultingBigIntis a valid 16-bit number.This parser will behave the same as
decimalexcept it will ensure that the resultingBigIntis a valid 16-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Short
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
decimal32[T](implicit arg0: can_hold_32_bits[T]): Parsley[T]
This parser will behave the same as
decimalexcept it will ensure that the resultingBigIntis a valid 32-bit number.This parser will behave the same as
decimalexcept it will ensure that the resultingBigIntis a valid 32-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Int
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
decimal64[T](implicit arg0: can_hold_64_bits[T]): Parsley[T]
This parser will behave the same as
decimalexcept it will ensure that the resultingBigIntis a valid 64-bit number.This parser will behave the same as
decimalexcept it will ensure that the resultingBigIntis a valid 64-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Long
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
decimal8[T](implicit arg0: can_hold_8_bits[T]): Parsley[T]
This parser will behave the same as
decimalexcept it will ensure that the resultingBigIntis a valid 8-bit number.This parser will behave the same as
decimalexcept it will ensure that the resultingBigIntis a valid 8-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Byte
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
hexadecimal16[T](implicit arg0: can_hold_16_bits[T]): Parsley[T]
This parser will behave the same as
hexadecimalexcept it will ensure that the resultingBigIntis a valid 16-bit number.This parser will behave the same as
hexadecimalexcept it will ensure that the resultingBigIntis a valid 16-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Short
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
hexadecimal32[T](implicit arg0: can_hold_32_bits[T]): Parsley[T]
This parser will behave the same as
hexadecimalexcept it will ensure that the resultingBigIntis a valid 32-bit number.This parser will behave the same as
hexadecimalexcept it will ensure that the resultingBigIntis a valid 32-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Int
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
hexadecimal64[T](implicit arg0: can_hold_64_bits[T]): Parsley[T]
This parser will behave the same as
hexadecimalexcept it will ensure that the resultingBigIntis a valid 64-bit number.This parser will behave the same as
hexadecimalexcept it will ensure that the resultingBigIntis a valid 64-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Long
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
hexadecimal8[T](implicit arg0: can_hold_8_bits[T]): Parsley[T]
This parser will behave the same as
hexadecimalexcept it will ensure that the resultingBigIntis a valid 8-bit number.This parser will behave the same as
hexadecimalexcept it will ensure that the resultingBigIntis a valid 8-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Byte
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
number16[T](implicit arg0: can_hold_16_bits[T]): Parsley[T]
This parser will behave the same as
numberexcept it will ensure that the resultingBigIntis a valid 16-bit number.This parser will behave the same as
numberexcept it will ensure that the resultingBigIntis a valid 16-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Short
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
number32[T](implicit arg0: can_hold_32_bits[T]): Parsley[T]
This parser will behave the same as
numberexcept it will ensure that the resultingBigIntis a valid 32-bit number.This parser will behave the same as
numberexcept it will ensure that the resultingBigIntis a valid 32-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Int
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
number64[T](implicit arg0: can_hold_64_bits[T]): Parsley[T]
This parser will behave the same as
numberexcept it will ensure that the resultingBigIntis a valid 64-bit number.This parser will behave the same as
numberexcept it will ensure that the resultingBigIntis a valid 64-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Long
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
number8[T](implicit arg0: can_hold_8_bits[T]): Parsley[T]
This parser will behave the same as
numberexcept it will ensure that the resultingBigIntis a valid 8-bit number.This parser will behave the same as
numberexcept it will ensure that the resultingBigIntis a valid 8-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Byte
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
octal16[T](implicit arg0: can_hold_16_bits[T]): Parsley[T]
This parser will behave the same as
octalexcept it will ensure that the resultingBigIntis a valid 16-bit number.This parser will behave the same as
octalexcept it will ensure that the resultingBigIntis a valid 16-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Short
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
octal32[T](implicit arg0: can_hold_32_bits[T]): Parsley[T]
This parser will behave the same as
octalexcept it will ensure that the resultingBigIntis a valid 32-bit number.This parser will behave the same as
octalexcept it will ensure that the resultingBigIntis a valid 32-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Int
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
octal64[T](implicit arg0: can_hold_64_bits[T]): Parsley[T]
This parser will behave the same as
octalexcept it will ensure that the resultingBigIntis a valid 64-bit number.This parser will behave the same as
octalexcept it will ensure that the resultingBigIntis a valid 64-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Long
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
octal8[T](implicit arg0: can_hold_8_bits[T]): Parsley[T]
This parser will behave the same as
octalexcept it will ensure that the resultingBigIntis a valid 8-bit number.This parser will behave the same as
octalexcept it will ensure that the resultingBigIntis a valid 8-bit number. The resulting number will be converted to the given typeT, which must be able to losslessly store the parsed value; this is enforced by the constraint on the type. This accounts for unsignedness when necessary.- T
the desired type of the result, defaulting to
Byte
- Annotations
- @inline()
- Since
4.0.0
- Note
the exact behaviour of this parser is decided by the implementations given in
Lexer, which will depend on user-defined configuration. Please see the relevant documentation of these specific objects.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()