|
fson
1.0.2
A comment-preserving C++ library for FSON — a human-friendly superset of JSON / JSON5
|
#include <Number.hh>
Inheritance diagram for fedem::fson::Number:
Collaboration diagram for fedem::fson::Number:Public Types | |
| enum class | Kind { Decimal , Hex , Infinity , NegativeInfinity , NaN } |
Public Types inherited from fedem::fson::Value | |
| enum class | Type { Null , Boolean , Number , String , Array , Object } |
Public Member Functions | |
| Number (double value) | |
| Number (long long value) | |
| Number (double value, std::string lexeme, Kind kind=Kind::Decimal) | |
| Type | getType () const noexcept override |
| std::unique_ptr< Value > | clone () const override |
| Number * | asNumber () noexcept override |
| Number const * | asNumber () const noexcept override |
| double | asDouble () const noexcept |
| long long | asInteger () const noexcept |
| bool | isIntegral () const noexcept |
| Kind | getKind () const noexcept |
| std::string const & | getLexeme () const noexcept |
| void | setValue (double value) |
| void | setValue (long long value) |
Public Member Functions inherited from fedem::fson::Value | |
| virtual | ~Value () |
| bool | isNull () const noexcept |
| bool | isBoolean () const noexcept |
| bool | isNumber () const noexcept |
| bool | isString () const noexcept |
| bool | isArray () const noexcept |
| bool | isObject () const noexcept |
| virtual Null * | asNull () noexcept |
| virtual Null const * | asNull () const noexcept |
| virtual Boolean * | asBoolean () noexcept |
| virtual Boolean const * | asBoolean () const noexcept |
| virtual String * | asString () noexcept |
| virtual String const * | asString () const noexcept |
| virtual Array * | asArray () noexcept |
| virtual Array const * | asArray () const noexcept |
| virtual Object * | asObject () noexcept |
| virtual Object const * | asObject () const noexcept |
Private Attributes | |
| double | value |
| std::string | lexeme |
| Kind | kind |
Additional Inherited Members | |
Protected Member Functions inherited from fedem::fson::Value | |
| Value ()=default | |
|
strong |
|
explicit |
|
explicit |
| fedem::fson::Number::Number | ( | double | value, |
| std::string | lexeme, | ||
| Kind | kind = Kind::Decimal |
||
| ) |
|
inlineoverridevirtualnoexcept |
Implements fedem::fson::Value.
References fedem::fson::Value::Number.
|
overridevirtual |
Implements fedem::fson::Value.
References Number(), kind, lexeme, and value.
Here is the call graph for this function:
|
inlineoverridevirtualnoexcept |
Reimplemented from fedem::fson::Value.
|
inlineoverridevirtualnoexcept |
Reimplemented from fedem::fson::Value.
|
inlinenoexcept |
References value.
Referenced by fedem::fson::Object::getDouble(), and fedem::fson::FsonWriter::writeNumber().
Here is the caller graph for this function:
|
inlinenoexcept |
References value.
Referenced by fedem::fson::Object::getInteger().
Here is the caller graph for this function:
|
noexcept |
|
inlinenoexcept |
References kind.
Referenced by fedem::fson::FsonWriter::writeNumber().
Here is the caller graph for this function:
|
inlinenoexcept |
References lexeme.
Referenced by fedem::fson::FsonWriter::writeNumber().
Here is the caller graph for this function:
|
private |
Referenced by Number(), asDouble(), asInteger(), clone(), and setValue().
|
private |
Referenced by Number(), clone(), getLexeme(), isIntegral(), and setValue().
|
private |
Referenced by Number(), clone(), getKind(), isIntegral(), and setValue().