UIQS.fromReader constructor
UIQS.fromReader(
- TeleportObjectReader reader
Implementation
factory UIQS.fromReader(TeleportObjectReader reader) {
final instance = UIQS();
TeleportField? field;
while ((field = reader.next()) != null) {
if (field!.isNull) continue;
switch (field.fieldId) {
case fieldIdElementId: {
instance.elementId = field.asInt32();
break;
}
case fieldIdLabels: {
final ar = field.asArray();
final list = <String>[];
TeleportArrayElement? el;
while ((el = ar.next()) != null) {
list.add(el!.asString());
}
instance.labels = list;
break;
}
case fieldIdStyleId: {
instance.styleId = field.asString();
break;
}
case fieldIdName: {
instance.name = field.asString();
break;
}
case fieldIdEventActionId: {
instance.eventActionId = field.asString();
break;
}
case fieldIdArgumentsJson: {
final dr = field.asDictionary();
final map = <String, String>{};
TeleportDictEntry? en;
while ((en = dr.next()) != null) {
final entry = en!;
map[entry.keyAsString()] = entry.valueAsField().asString();
}
instance.argumentsJson = map;
break;
}
}
}
return instance;
}