2
0
mirror of https://github.com/esiur/esiur-dart.git synced 2026-04-02 09:38:20 +00:00

null-safety

This commit is contained in:
2021-07-24 13:12:43 +03:00
parent 6be04c39ed
commit 614c6853e3
48 changed files with 3022 additions and 3320 deletions

View File

@@ -14,63 +14,59 @@ class PropertyTemplate extends MemberTemplate {
int storage;
String readExpansion;
String? readExpansion;
String writeExpansion;
String? writeExpansion;
DC compose() {
var name = super.compose();
var pv = ((permission) << 1) | (storage == StorageMode.Recordable ? 1 : 0);
if (writeExpansion != null && readExpansion != null) {
var rexp = DC.stringToBytes(readExpansion);
var wexp = DC.stringToBytes(writeExpansion);
return new BinaryList()
.addUint8(0x38 | pv)
.addUint8(name.length)
.addDC(name)
.addDC(valueType.compose())
.addInt32(wexp.length)
.addDC(wexp)
.addInt32(rexp.length)
.addDC(rexp)
var rexp = DC.stringToBytes(readExpansion as String);
var wexp = DC.stringToBytes(writeExpansion as String);
return (BinaryList()
..addUint8(0x38 | pv)
..addUint8(name.length)
..addDC(name)
..addDC(valueType.compose())
..addInt32(wexp.length)
..addDC(wexp)
..addInt32(rexp.length)
..addDC(rexp))
.toDC();
} else if (writeExpansion != null) {
var wexp = DC.stringToBytes(writeExpansion);
return new BinaryList()
.addUint8(0x30 | pv)
.addUint8(name.length)
.addDC(name)
.addDC(valueType.compose())
.addInt32(wexp.length)
.addDC(wexp)
var wexp = DC.stringToBytes(writeExpansion as String);
return (BinaryList()
..addUint8(0x30 | pv)
..addUint8(name.length)
..addDC(name)
..addDC(valueType.compose())
..addInt32(wexp.length)
..addDC(wexp))
.toDC();
} else if (readExpansion != null) {
var rexp = DC.stringToBytes(readExpansion);
return new BinaryList()
.addUint8(0x28 | pv)
.addUint8(name.length)
.addDC(name)
.addDC(valueType.compose())
.addInt32(rexp.length)
.addDC(rexp)
var rexp = DC.stringToBytes(readExpansion as String);
return (BinaryList()
..addUint8(0x28 | pv)
..addUint8(name.length)
..addDC(name)
..addDC(valueType.compose())
..addInt32(rexp.length)
..addDC(rexp))
.toDC();
} else
return new BinaryList()
.addUint8(0x20 | pv)
.addUint8(name.length)
.addDC(name)
.addDC(valueType.compose())
return (BinaryList()
..addUint8(0x20 | pv)
..addUint8(name.length)
..addDC(name)
..addDC(valueType.compose()))
.toDC();
}
PropertyTemplate(TypeTemplate template, int index, String name,
TemplateDataType valueType, String read, String write, int storage)
this.valueType, this.readExpansion, this.writeExpansion, this.storage)
: super(template, MemberType.Property, index, name) {
//this.Recordable = recordable;
this.storage = storage;
this.readExpansion = read;
this.writeExpansion = write;
this.valueType = valueType;
}
}