BsonObject.fromTypeByteAndBuffer constructor

BsonObject.fromTypeByteAndBuffer(
  1. int typeByte,
  2. BsonBinary buffer
)

Implementation

factory BsonObject.fromTypeByteAndBuffer(int typeByte, BsonBinary buffer) {
  switch (typeByte) {
    case bsonDataInt:
      return BsonInt.fromBuffer(buffer);
    case bsonDataLong:
      return BsonLong.fromBuffer(buffer);
    case bsonDataNumber:
      return BsonDouble.fromBuffer(buffer);
    case bsonDataString:
      return BsonString.fromBuffer(buffer);
    case bsonDataArray:
      return BsonArray.fromBuffer(buffer);
    case bsonDataObject:
      return BsonMap.fromBuffer(buffer);
    case bsonDataUndefined:
      return BsonNull.fromBuffer(buffer);
    case bsonDataObjectId:
      return BsonObjectId.fromBuffer(buffer);
    case bsonDataNull:
      return BsonNull.fromBuffer(buffer);
    case bsonDataDbPointer:
      return DbRef.fromBuffer(buffer);
    case bsonDataBool:
      return BsonBoolean.fromBuffer(buffer);
    case bsonDataBinary:
      return BsonBinary.fromBuffer(buffer);
    case bsonDataDate:
      return BsonDate.fromBuffer(buffer);
    case bsonDataCode:
      return BsonCode.fromBuffer(buffer);
    case bsonDataRegExp:
      return BsonRegexp.fromBuffer(buffer);
    case bsonDataTimestamp:
      return BsonTimestamp.fromBuffer(buffer);
    case bsonDecimal128:
      return BsonDecimal128.fromBuffer(buffer);
    default:
      throw Exception('Not implemented for BSON TYPE $typeByte');
  }
}