in src/BinaryObject.ts [119:140]
static async fromObject(jsObject, complexObjectType = null) {
ArgumentChecker.notEmpty(jsObject, 'jsObject');
ArgumentChecker.hasType(complexObjectType, 'complexObjectType', false, ComplexObjectType);
const typeBuilder = BinaryTypeBuilder.fromObject(jsObject, complexObjectType);
const result = new BinaryObject(typeBuilder.getTypeName());
result._typeBuilder = typeBuilder;
let fieldName;
for (let field of result._typeBuilder.getFields()) {
fieldName = field.name;
if (jsObject && jsObject[fieldName] !== undefined) {
result.setField(
fieldName,
jsObject[fieldName],
complexObjectType ? complexObjectType._getFieldType(fieldName) : null);
}
else {
throw IgniteClientError.serializationError(
true, Util.format('field "%s" is undefined', fieldName));
}
}
return result;
}