The OpenD Programming Language

IonNInt

Ion negative integer number.

Members

Functions

get
IonErrorCode get(T value)
get
T get()
get
IonErrorCode get(T value)
getErrorCode
IonErrorCode getErrorCode()

Variables

data
const(ubyte)[] data;

Examples

import mir.test;
assert(IonValue([0x3F]).describe.get!IonNull == IonNull(IonTypeCode.nInt));
assert(IonValue([0x31, 0x07]).describe.get!IonNInt.get!int == -7);

long v;
assert(IonValue([0x32, 0x01, 0x04]).describe.get!IonNInt.get(v) == IonErrorCode.none);
v.should == -260;

// IonNInt can't store zero according to the Ion Binary format specification.
IonErrorCode error;
IonValue([0x30]).describe(error);
assert(error == IonErrorCode.negativeIntegerZero);
IonValue([0x31, 0x00]).describe(error);
assert(error == IonErrorCode.negativeIntegerZero);
IonValue([0x3E, 0x80]).describe(error);
assert(error == IonErrorCode.negativeIntegerZero);

Meta