25 public function __construct(
27 private int $typeInfo,
28 private bool $optional,
32 public function getName() :
string{
return $this->name; }
34 public function getTypeInfo() :
int{
return $this->typeInfo; }
36 public function isOptional() :
bool{
return $this->optional; }
38 public function getFlags() :
int{
return $this->flags; }
40 public static function read(ByteBufferReader $in) :
self{
41 $name = CommonTypes::getString($in);
42 $typeInfo = LE::readUnsignedInt($in);
43 $optional = CommonTypes::getBool($in);
44 $flags = Byte::readUnsigned($in);
46 return new self($name, $typeInfo, $optional, $flags);
49 public function write(ByteBufferWriter $out) :
void{
50 CommonTypes::putString($out, $this->name);
51 LE::writeUnsignedInt($out, $this->typeInfo);
52 CommonTypes::putBool($out, $this->optional);
53 Byte::writeUnsigned($out, $this->flags);