Available on crate feature
parse-floats
only.Expand description
Configuration options for parsing floats.
This enables extensive control over how the float is parsed, from control characters like the decimal point and the valid non-finite float representations.
§Examples
For example, to parse a European-style float:
use lexical_parse_float::{FromLexicalWithOptions, Options};
use lexical_parse_float::format::STANDARD;
const OPTIONS: Options = Options::builder()
.decimal_point(b',')
.build_strict();
let value = "1,2345e300";
let result = f64::from_lexical_with_options::<STANDARD>(value.as_bytes(), &OPTIONS);
assert_eq!(result, Ok(1.2345e300));
§Pre-Defined Formats
These are the pre-defined formats for parsing numbers from various programming, markup, and data languages.
STANDARD
: Standard number format.DECIMAL_COMMA
: Numerical format with a decimal comma.HEX_FLOAT
: Numerical format for hexadecimal floats, which use ap
exponent.RUST_LITERAL
: Number format for aRust
literal floating-point number.PYTHON_LITERAL
: Number format for aPython
literal floating-point number.CXX_LITERAL
: Number format for aC++
literal floating-point number.C_LITERAL
: Number format for aC
literal floating-point number.RUBY_LITERAL
: Number format for aRuby
literal floating-point number.RUBY_STRING
: Number format to parse aRuby
float from string.SWIFT_LITERAL
: Number format for aSwift
literal floating-point number.GO_LITERAL
: Number format for aGolang
literal floating-point number.HASKELL_LITERAL
: Number format for aHaskell
literal floating-point number.HASKELL_STRING
: Number format to parse aHaskell
float from string.JAVASCRIPT_LITERAL
: Number format for aJavascript
literal floating-point number.JAVASCRIPT_STRING
: Number format to parse aJavascript
float from string.PERL_LITERAL
: Number format for aPerl
literal floating-point number.PHP_LITERAL
: Number format for aPHP
literal floating-point number.JAVA_LITERAL
: Number format for aJava
literal floating-point number.JAVA_STRING
: Number format to parse aJava
float from string.R_LITERAL
: Number format for anR
literal floating-point number.KOTLIN_LITERAL
: Number format for aKotlin
literal floating-point number.KOTLIN_STRING
: Number format to parse aKotlin
float from string.JULIA_LITERAL
: Number format for aJulia
literal floating-point number.CSHARP_LITERAL
: Number format for aC#
literal floating-point number.CSHARP_STRING
: Number format to parse aC#
float from string.KAWA_LITERAL
: Number format for aKawa
literal floating-point number.KAWA_STRING
: Number format to parse aKawa
float from string.GAMBITC_LITERAL
: Number format for aGambit-C
literal floating-point number.GAMBITC_STRING
: Number format to parse aGambit-C
float from string.GUILE_LITERAL
: Number format for aGuile
literal floating-point number.GUILE_STRING
: Number format to parse aGuile
float from string.CLOJURE_LITERAL
: Number format for aClojure
literal floating-point number.CLOJURE_STRING
: Number format to parse aClojure
float from string.ERLANG_LITERAL
: Number format for anErlang
literal floating-point number.ERLANG_STRING
: Number format to parse anErlang
float from string.ELM_LITERAL
: Number format for anElm
literal floating-point number.ELM_STRING
: Number format to parse anElm
float from string.SCALA_LITERAL
: Number format for aScala
literal floating-point number.SCALA_STRING
: Number format to parse aScala
float from string.ELIXIR_LITERAL
: Number format for anElixir
literal floating-point number.ELIXIR_STRING
: Number format to parse anElixir
float from string.FORTRAN_LITERAL
: Number format for aFORTRAN
literal floating-point number.D_LITERAL
: Number format for aD
literal floating-point number.COFFEESCRIPT_LITERAL
: Number format for aCoffeescript
literal floating-point number.COFFEESCRIPT_STRING
: Number format to parse aCoffeescript
float from string.COBOL_LITERAL
: Number format for aCOBOL
literal floating-point number.COBOL_STRING
: Number format to parse aCOBOL
float from string.FSHARP_LITERAL
: Number format for anF#
literal floating-point number.VB_LITERAL
: Number format for aVisual Basic
literal floating-point number.VB_STRING
: Number format to parse aVisual Basic
float from string.OCAML_LITERAL
: Number format for anOCaml
literal floating-point number.OBJECTIVEC_LITERAL
: Number format for anObjective-C
literal floating-point number.OBJECTIVEC_STRING
: Number format to parse anObjective-C
float from string.REASONML_LITERAL
: Number format for anReasonML
literal floating-point number.MATLAB_LITERAL
: Number format for aMATLAB
literal floating-point number.ZIG_LITERAL
: Number format for aZig
literal floating-point number.SAGE_LITERAL
: Number format for aSage
literal floating-point number.JSON
: Number format for aJSON
literal floating-point number.TOML
: Number format for aTOML
literal floating-point number.YAML
: Number format for aYAML
literal floating-point number.XML
: Number format for anXML
literal floating-point number.SQLITE
: Number format for aSQLite
literal floating-point number.POSTGRESQL
: Number format for aPostgreSQL
literal floating-point number.MYSQL
: Number format for aMySQL
literal floating-point number.MONGODB
: Number format for aMongoDB
literal floating-point number.
Structs§
- Options
- Options to customize parsing floats.
- Options
Builder - Builder for
Options
.
Constants§
- CARAT_
EXPONENT - Numerical format where
^
is used as the exponent notation character. This isn’t very common, but is useful whene
orp
are valid digits. - CLOJURE_
LITERAL - Number format for a
Clojure
literal floating-point number. - CLOJURE_
STRING - Number format to parse a
Clojure
float from string. - COBOL_
LITERAL - Number format for a
COBOL
literal floating-point number. - COBOL_
STRING - Number format to parse a
COBOL
float from string. - COFFEESCRIPT_
LITERAL - Number format for a
Coffeescript
literal floating-point number. - COFFEESCRIPT_
STRING - Number format to parse a
Coffeescript
float from string. - CSHARP_
LITERAL - Number format for a
C#
literal floating-point number. - CSHARP_
STRING - Number format to parse a
C#
float from string. - CXX_
LITERAL - Number format for a
C++
literal floating-point number. - C_
LITERAL - Number format for a
C
literal floating-point number. - DECIMAL_
COMMA - Numerical format with a decimal comma. This is the standard numerical format for most of the world.
- D_
LITERAL - Number format for a
D
literal floating-point number. - ELIXIR_
LITERAL - Number format for an
Elixir
literal floating-point number. - ELIXIR_
STRING - Number format to parse an
Elixir
float from string. - ELM_
LITERAL - Number format for an
Elm
literal floating-point number. - ELM_
STRING - Number format to parse an
Elm
float from string. - ERLANG_
LITERAL - Number format for an
Erlang
literal floating-point number. - ERLANG_
STRING - Number format to parse an
Erlang
float from string. - FORTRAN_
LITERAL - Number format for a
FORTRAN
literal floating-point number. - FSHARP_
LITERAL - Number format for an
F#
literal floating-point number. - GAMBITC_
LITERAL - Number format for a
Gambit-C
literal floating-point number. - GAMBITC_
STRING - Number format to parse a
Gambit-C
float from string. - GO_
LITERAL - Number format for a
Go
literal floating-point number. - GUILE_
LITERAL - Number format for a
Guile
literal floating-point number. - GUILE_
STRING - Number format to parse a
Guile
float from string. - HASKELL_
LITERAL - Number format for a
Haskell
literal floating-point number. - HASKELL_
STRING - Number format to parse a
Haskell
float from string. - HEX_
FLOAT - Numerical format for hexadecimal floats, which use a
p
exponent. - JAVASCRIPT_
LITERAL - Number format for a
Javascript
literal floating-point number. - JAVASCRIPT_
STRING - Number format to parse a
Javascript
float from string. - JAVA_
LITERAL - Number format for a
Java
literal floating-point number. - JAVA_
STRING - Number format to parse a
Java
float from string. - JSON
- Number format for a
JSON
literal floating-point number. - JULIA_
LITERAL - Number format for a
Julia
literal floating-point number. - KAWA_
LITERAL - Number format for a
Kawa
literal floating-point number. - KAWA_
STRING - Number format to parse a
Kawa
float from string. - KOTLIN_
LITERAL - Number format for a
Kotlin
literal floating-point number. - KOTLIN_
STRING - Number format to parse a
Kotlin
float from string. - MATLAB_
LITERAL - Number format for a
MATLAB
literal floating-point number. - MAX_
SPECIAL_ STRING_ LENGTH - Maximum length for a special string.
- MONGODB
- Number format for a
MongoDB
literal floating-point number. - MYSQL
- Number format for a
MySQL
literal floating-point number. - OBJECTIVEC_
LITERAL - Number format for an
Objective-C
literal floating-point number. - OBJECTIVEC_
STRING - Number format to parse an
Objective-C
float from string. - OCAML_
LITERAL - Number format for an
OCaml
literal floating-point number. - PERL_
LITERAL - Number format for a
Perl
literal floating-point number. - PHP_
LITERAL - Number format for a
PHP
literal floating-point number. - POSTGRESQL
- Number format for a
PostgreSQL
literal floating-point number. - PYTHON_
LITERAL - Number format for a
Python
literal floating-point number. - REASONML_
LITERAL - Number format for an
ReasonML
literal floating-point number. - RUBY_
LITERAL - Number format for a
Ruby
literal floating-point number. - RUBY_
STRING - Number format to parse a
Ruby
float from string.Ruby
can write NaN and Infinity as strings, but won’t round-trip them back to floats. - RUST_
LITERAL - Number format for a
Rust
literal floating-point number. - R_
LITERAL - Number format for an
R
literal floating-point number. - SAGE_
LITERAL - Number format for a
Sage
literal floating-point number. - SCALA_
LITERAL - Number format for a
Scala
literal floating-point number. - SCALA_
STRING - Number format to parse a
Scala
float from string. - SQLITE
- Number format for a
SQLite
literal floating-point number. - STANDARD
- Standard number format.
- SWIFT_
LITERAL - Number format for a
Swift
literal floating-point number. - TOML
- Number format for a
TOML
literal floating-point number. - VB_
LITERAL - Number format for a Visual Basic literal floating-point number.
- VB_
STRING - Number format to parse a
Visual Basic
float from string. - XML
- Number format for an
XML
literal floating-point number. - YAML
- Number format for a
YAML
literal floating-point number. - ZIG_
LITERAL - Number format for a
Zig
literal floating-point number.