50 virtual bool isValid()
const = 0;
53 virtual ::cereal::SchemaRWType expectedType()
const = 0;
56 virtual ::Bedrock::Result<void> asNull() = 0;
59 virtual ::Bedrock::Result<bool> asBool() = 0;
62 virtual ::Bedrock::Result<schar> asInt8() = 0;
65 virtual ::Bedrock::Result<uchar> asUInt8() = 0;
68 virtual ::Bedrock::Result<short> asInt16() = 0;
71 virtual ::Bedrock::Result<ushort> asUInt16() = 0;
74 virtual ::Bedrock::Result<int> asInt32() = 0;
77 virtual ::Bedrock::Result<uint> asUInt32() = 0;
80 virtual ::Bedrock::Result<int64> asInt64() = 0;
83 virtual ::Bedrock::Result<uint64> asUInt64() = 0;
86 virtual ::Bedrock::Result<float> asFloat() = 0;
89 virtual ::Bedrock::Result<double> asDouble() = 0;
92 virtual ::Bedrock::Result<::std::string> asString() = 0;
95 virtual ::std::optional<bool> readValidityFlag() = 0;
98 virtual ::std::optional<uint> readControlValue() = 0;
101 virtual uint64 members() = 0;
104 virtual uint64 length(uint64) = 0;
107 virtual bool pushMember(::std::string_view
const) = 0;
110 virtual ::std::string_view pushNextMember() = 0;
113 virtual void pushElement(uint64) = 0;
116 virtual void pop() = 0;