AnyBSON
@frozen
public enum AnyBSON : BSON
extension AnyBSON: ExpressibleByStringLiteral
extension AnyBSON: ExpressibleByBooleanLiteral
extension AnyBSON: ExpressibleByFloatLiteral
extension AnyBSON: ExpressibleByIntegerLiteral
extension AnyBSON: ExpressibleByDictionaryLiteral
extension AnyBSON: ExpressibleByArrayLiteral
extension AnyBSON: Equatable
extension AnyBSON: Hashable
表示 BSON 值的枚举。
另请参阅
bsonspec.org-
一个 BSON 双精度浮点数。
声明
Swift
case double(Double)
-
一个 BSON 字符串。
声明
Swift
case string(String)
-
BSON 文档。
声明
Swift
indirect case document(Document)
-
一个 BSON 数组。
声明
Swift
indirect case array([AnyBSON?])
-
BSON 二进制文件。
声明
Swift
case binary(Data)
-
一个 BSON ObjectId。
声明
Swift
case objectId(ObjectId)
-
一个 BSON 布尔值。
声明
Swift
case bool(Bool)
-
BSON UTC 日期时间。
声明
Swift
case datetime(Date)
-
BSON 正则表达式。
声明
Swift
case regex(NSRegularExpression)
-
一个 BSON int32。
声明
Swift
case int32(Int32)
-
声明
Swift
case timestamp(Date)
-
一个 BSON int64。
声明
Swift
case int64(Int64)
-
BSON Decimal128。
声明
Swift
case decimal128(Decimal128)
-
一个 UUID。
声明
Swift
case uuid(UUID)
-
一个 BSON minKey。
声明
Swift
case minKey
-
一个 BSON maxKey。
声明
Swift
case maxKey
-
BSON null 类型。
声明
Swift
case null
-
从整数初始化
BSON
。 在 64 位系统上,这会产生.int64
。 在 32 位系统上,这将导致.int32
。声明
Swift
public init(_ int: Int)
-
声明
Swift
public init<T>(_ bson: T) where T : BSON
-
如果此
BSON
是.int32
,则将其作为Int32
返回。 否则,返回 nil。声明
Swift
public var int32Value: Int32? { get }
-
如果此
BSON
是.regex
,则将其作为RegularExpression
返回。 否则,返回 nil。声明
Swift
public var regexValue: NSRegularExpression? { get }
-
如果此
BSON
是.int64
,则将其作为Int64
返回。 否则,返回 nil。声明
Swift
public var int64Value: Int64? { get }
-
声明
Swift
public var objectIdValue: ObjectId? { get }
-
如果此
BSON
是.date
,则将其作为Date
返回。 否则,返回 nil。声明
Swift
public var dateValue: Date? { get }
-
如果此
BSON
是.array
,则将其作为[BSON]
返回。 否则,返回 nil。声明
Swift
public var arrayValue: [AnyBSON?]? { get }
-
如果此
BSON
是.string
,则将其作为String
返回。 否则,返回 nil。声明
Swift
public var stringValue: String? { get }
-
声明
Swift
public var documentValue: Document? { get }
-
如果此
BSON
是.bool
,则将其作为Bool
返回。 否则,返回 nil。声明
Swift
public var boolValue: Bool? { get }
-
如果此
BSON
是.binary
,则将其作为Binary
返回。 否则,返回 nil。声明
Swift
public var binaryValue: Data? { get }
-
如果此
BSON
是.double
,则将其作为Double
返回。 否则,返回 nil。声明
Swift
public var doubleValue: Double? { get }
-
如果此
BSON
是.decimal128
,则将其作为Decimal128
返回。 否则,返回 nil。声明
Swift
public var decimal128Value: Decimal128? { get }
-
如果此
BSON
是.timestamp
,则将其作为Timestamp
返回。 否则,返回 nil。声明
Swift
public var timestampValue: Date? { get }
-
如果此
BSON
是.uuid
,则将其作为UUID
返回。 否则,返回 nil。声明
Swift
public var uuidValue: UUID? { get }
-
声明
Swift
public var isNull: Bool { get }
-
如果可能,请将此 BSON 作为
Int
返回。 这将强制执行非整数数字大小写(例如.double
)转换为Int
,前提是此类强制转换是无损的。声明
Swift
public func asInt() -> Int?
-
如果可能,请将此 BSON 作为
Int32
返回。 这将强制转换数字大小写(例如.double
)转换为Int32
,前提是此类强制转换是无损的。声明
Swift
public func asInt32() -> Int32?
-
如果可能,请将此 BSON 作为
Int64
返回。 这将强制转换数字大小写(例如.double
)转换为Int64
,前提是此类强制转换是无损的。声明
Swift
public func asInt64() -> Int64?
-
如果可能,请将此 BSON 作为
Double
返回。 这将强制转换数字大小写(例如.decimal128
)转换为Double
,前提是此类强制转换是无损的。声明
Swift
public func asDouble() -> Double?
-
如果可能,请将此 BSON 作为
Decimal128
返回。 这将强制转换数字大小写(例如.double
)转换为Decimal128
,前提是此类强制转换是无损的。声明
Swift
public func asDecimal128() -> Decimal128?
-
如果可能,请将此 BSON 作为
T
返回,否则为零。声明
Swift
public func value<T>() -> T? where T : BSON
-
声明
Swift
public init(stringLiteral value: String)
-
声明
Swift
public init(booleanLiteral value: Bool)
-
声明
Swift
public init(floatLiteral value: Double)
-
从整数初始化
BSON
。 在 64 位系统上,这会产生.int64
。 在 32 位系统上,这将导致.int32
。声明
Swift
public init(integerLiteral value: Int)
-
声明
Swift
public init(dictionaryLiteral elements: (String, AnyBSON?)...)
-
声明
Swift
public init(arrayLiteral elements: AnyBSON?...)