# Types.hpp

This File On Github
Ask A Question

API: latest
module: oatpp-mongo
#include "oatpp-mongo/bson/Types.hpp"

# TypeCode

Enum with bson data-type codes.

namespace oatpp { namespace mongo { namespace bson { 
  enum TypeCode : v_char8;
}}}

# TypeCode::DOCUMENT_ROOT

Not from BSON specification. This code is added to designate the entrypoint for parser.

DOCUMENT_ROOT = 0x00

# TypeCode::DOUBLE

64-bit binary floating point.

DOUBLE = 0x01

# TypeCode::STRING

UTF-8 string.

STRING = 0x02

# TypeCode::DOCUMENT_EMBEDDED

Embedded document.

DOCUMENT_EMBEDDED = 0x03

# TypeCode::DOCUMENT_ARRAY

Array.

DOCUMENT_ARRAY = 0x04

# TypeCode::BINARY

Binary data.

BINARY = 0x05

# TypeCode::UNDEFINED

Undefined (value) — Deprecated.

UNDEFINED = 0x06

# TypeCode::OBJECT_ID

ObjectId

OBJECT_ID = 0x07

# TypeCode::BOOLEAN

Boolean value.

BOOLEAN = 0x08

# TypeCode::DATE_TIME

Int64 UTC datetime.

DATE_TIME = 0x09

# TypeCode::NULL_VALUE

Null value.

NULL_VALUE = 0x0A

# TypeCode::REGEXP

Regular expression.

REGEXP = 0x0B

# TypeCode::BD_POINTER

DBPointer — Deprecated.

BD_POINTER = 0x0C

# TypeCode::JAVASCRIPT_CODE

JavaScript code.

JAVASCRIPT_CODE = 0x0D

# TypeCode::SYMBOL

Symbol. Deprecated.

SYMBOL = 0x0E

# TypeCode::JAVASCRIPT_CODE_WS

JavaScript code w/ scope.

JAVASCRIPT_CODE_WS = 0x0F

# TypeCode::INT_32

32-bit integer.

INT_32 = 0x10

# TypeCode::TIMESTAMP

Timestamp (uint64).

TIMESTAMP = 0x11

# TypeCode::INT_64

64-bit integer.

INT_64 = 0x12

# TypeCode::DECIMAL_128

128-bit decimal floating point.

DECIMAL_128 = 0x13

# TypeCode::MIN_KEY

Min key.

MIN_KEY = 0xFF

# TypeCode::MAX_KEY

Max key

MAX_KEY = 0x7F

# InlineDocument

Namespace: oatpp::mongo::bson

Inline Document - is a binary buffer containing a valid BSON document.
May be useful in some cases.

typedef oatpp::data::mapping::type::ObjectWrapper<std::string, __class::InlineDocument> InlineDocument

# InlineArray

Namespace: oatpp::mongo::bson

Inline Array - is a binary buffer containing a valid BSON Array.
May be useful in some cases.

typedef oatpp::data::mapping::type::ObjectWrapper<std::string, __class::InlineArray> InlineArray

# ObjectId

Namespace: oatpp::mongo::bson

ObjectId as oatpp primitive type.

typedef oatpp::data::mapping::type::Primitive<type::ObjectId, __class::ObjectId> ObjectId

# DateTime

Namespace: oatpp::mongo::bson

DateTime is an ObjectWrapper over v_int64 and __class::DateTime.

typedef oatpp::data::mapping::type::Primitive<v_int64, __class::DateTime> DateTime