Json Value
Defined in framework ScanditCaptureCore
Warning
The deserialization API is not yet stable and will still change over the coming releases.
- JSONValue
open class JSONValue : NSObject
Added in version 6.0.0
JSON representation for use with the Scandit Data Capture SDK. It provides a lot of convenience functions for deserialization of base classes. It also tracks the usage of properties to be able to later report those that were not used for deserialization (potentially because they were misspelled or are outdated).
- init
convenience init(string: String)
Added in version 6.1.0
Returns a new JSON Value for the given json string. An exception is thrown if the string is not a valid JSON representation.
- jsonString
open func jsonString() -> String
Added in version 6.1.0
Returns the string representation of the JSON value.
- asBOOL
open func asBOOL() ->
BoolAdded in version 6.1.0
Returns the value as a boolean. An exception is thrown if the conversion is not possible.
- bool
open func bool(forKey key: String) ->
BoolAdded in version 6.1.0
Returns the value for the given key as a boolean. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a boolean.
- bool
open func bool(forKey key: String, default defaultValue:
Bool) ->BoolAdded in version 6.1.0
Returns the value for the given key as a boolean. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a boolean.
- asInteger
open func asInteger() ->
IntAdded in version 6.1.0
Returns the value as an integer. An exception is thrown if the conversion is not possible.
- integer
open func integer(forKey key: String) ->
IntAdded in version 6.1.0
Returns the value for the given key as an integer. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not an integer.
- integer
open func integer(forKey key: String, default defaultValue:
Int) ->IntAdded in version 6.1.0
Returns the value for the given key as an integer. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not an integer.
- asCGFloat
open func asCGFloat() -> CGFloat
Added in version 6.1.0
Returns the value as a float. An exception is thrown if the conversion is not possible.
- cgFloat
open func cgFloat(forKey key: String) -> CGFloat
Added in version 6.1.0
Returns the value for the given key as a float. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a float.
- cgFloat
open func cgFloat(forKey key: String, default defaultValue: CGFloat) -> CGFloat
Added in version 6.1.0
Returns the value for the given key as a float. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a float.
- asString
open func asString() -> String
Added in version 6.1.0
Returns the value as a string. An exception is thrown if the conversion is not possible.
- string
open func string(forKey key: String) -> String
Added in version 6.1.0
Returns the value for the given key as a string. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a string.
- string
open func string(forKey key: String, default defaultValue: String) -> String
Added in version 6.1.0
Returns the value for the given key as a string. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a string.
- asColor
open func asColor() -> UIColor
Added in version 6.1.0
Returns the value as a color. An exception is thrown if the conversion is not possible.
- color
open func color(forKey key: String) -> UIColor
Added in version 6.1.0
Returns the value for the given key as a color. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a color.
- color
open func color(forKey key: String, default defaultValue: UIColor) -> UIColor
Added in version 6.1.0
Returns the value for the given key as a color. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a color.
- asBrush
open func asBrush() -> Brush
Added in version 6.1.0
Returns the value as a Brush. An exception is thrown if the conversion is not possible.
- brush
open func brush(forKey key: String) -> Brush
Added in version 6.1.0
Returns the value for the given key as a Brush. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a Brush.
- brush
open func brush(forKey key: String, default defaultValue: Brush) -> Brush
Added in version 6.1.0
Returns the value for the given key as a Brush. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a Brush.
- asFloatWithUnit
open func asFloatWithUnit() -> FloatWithUnit
Added in version 6.1.0
Returns the value as a FloatWithUnit. An exception is thrown if the conversion is not possible.
- floatWithUnit
open func floatWithUnit(forKey key: String) -> FloatWithUnit
Added in version 6.1.0
Returns the value for the given key as a FloatWithUnit. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a FloatWithUnit.
- floatWithUnit
open func floatWithUnit(forKey key: String, default defaultValue: FloatWithUnit) -> FloatWithUnit
Added in version 6.1.0
Returns the value for the given key as a FloatWithUnit. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a FloatWithUnit.
- asPointWithUnit
open func asPointWithUnit() -> PointWithUnit
Added in version 6.1.0
Returns the value as a PointWithUnit. An exception is thrown if the conversion is not possible.
- pointWithUnit
open func pointWithUnit(forKey key: String) -> PointWithUnit
Added in version 6.1.0
Returns the value for the given key as a PointWithUnit. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a PointWithUnit.
- pointWithUnit
open func pointWithUnit(forKey key: String, default defaultValue: PointWithUnit) -> PointWithUnit
Added in version 6.1.0
Returns the value for the given key as a PointWithUnit. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a PointWithUnit.
- asMarginsWithUnit
open func asMarginsWithUnit() -> MarginsWithUnit
Added in version 6.1.0
Returns the value as a MarginsWithUnit. An exception is thrown if the conversion is not possible.
- marginsWithUnit
open func marginsWithUnit(forKey key: String) -> MarginsWithUnit
Added in version 6.1.0
Returns the value for the given key as a MarginsWithUnit. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a MarginsWithUnit.
- marginsWithUnit
open func marginsWithUnit(forKey key: String, default defaultValue: MarginsWithUnit) -> MarginsWithUnit
Added in version 6.1.0
Returns the value for the given key as a MarginsWithUnit. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a MarginsWithUnit.
- asArray
open func asArray() -> JSONValue
Added in version 6.1.0
Returns the value if it is an array. An exception is thrown if the conversion is not possible.
- array
open func array(forKey key: String) -> JSONValue
Added in version 6.1.0
Returns the value for the given key as an array. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not an array.
- array
open func array(forKey key: String, default defaultValue: JSONValue) -> JSONValue
Added in version 6.1.0
Returns the value for the given key as an array. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not an array.
- count
open func count() ->
UIntAdded in version 6.1.0
The size of the array. An exception is thrown if this JSON value is not an array.
- atIndex
open func atIndex(_ index:
UInt) -> JSONValueAdded in version 6.1.0
Returns the value for the given index. An exception is thrown if this JSON Value is not an array or the given index is out of bounds.
- asObject
open func asObject() -> JSONValue
Added in version 6.1.0
Returns the value if it is an object. An exception is thrown if the conversion is not possible.
- object
open func object(forKey key: String) -> JSONValue
Added in version 6.1.0
Returns the value for the given key as an object. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not an object.
- object
open func object(forKey key: String, default defaultValue: JSONValue) -> JSONValue
Added in version 6.1.0
Returns the value for the given key as an object. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not an object.
- containsKey
open func containsKey(_ key: String) ->
BoolAdded in version 6.1.0
Returns whether a value for the given key exists. An exception is thrown if this JSON Value is not an object.
- absolutePath
open var absolutePath: String { get }
Added in version 6.1.0
The path from the root to this JSON value.
- isUsed
open var isUsed:
Bool{ get, set }Added in version 6.1.0
Whether this JSON value was used during deserialization.
- asTimeinterval
open func asTimeinterval() -> TimeInterval
Added in version 6.16.0
Returns the current value as a value representing a TimeInterval.
- timeinterval
open func timeinterval(forKey key: String) -> TimeInterval
Added in version 6.16.0
Returns the value for the given key as a TimeInterval.
- keys
open func keys() -> Set<String>
Added in version 6.16.0
Returns the keys of the current value if any.
- removeKeys
open func removeKeys(_ keysToRemove: Set<String>) ->
VoidAdded in version 6.16.0
Removes the given keys from the current value.
- containsArray
open func containsArray(withKey key: String) ->
BoolAdded in version 6.16.0
Determines whether the current value is an object and contains an array with the given key.