method Decoder.readF64
Reads a floating point number.
Example:
use std.ser { Codec, Encoder, Decoder, Schema, encode, decode, hex, EncodeError, DecodeError }
data Real {}
impl Codec<f64> for Real {
static fn encode(x: &f64, w: &var Encoder) -> () | EncodeError { w.writeF64(x) }
static fn decode(r: &var Decoder) -> f64 | DecodeError { r.readF64() }
static fn schema() -> Schema => Schema.of("double")
}
data Wrap {
@codec(Real) n: f64
}
fn main() io {
let b = encode(&Wrap{ n: 2.5 })!
print("{decode<Wrap>(&b)!.n}")
}Output
2.5
var fn readF64() -> f64 | DecodeErrorSince. 1.0.0-beta
Returns
f64
Errors
DecodeError@error- `DecodeError.Malformed` when the next value is not a number.
Effects
none declared (pure unless the body says otherwise)
Defined in: std/ser/ser.oxl:1577