33 private array $valueIndexes
36 public function getName() : string{ return $this->name; }
44 public static function read(ByteBufferReader $in,
int $valueListSize) : self{
47 $size = VarInt::readUnsignedInt($in);
49 for($i = 0; $i < $size; $i++){
50 $valueIndexes[] = match(
true){
51 $valueListSize < 256 => Byte::readUnsigned($in),
52 $valueListSize < 65536 => LE::readUnsignedShort($in),
53 default => LE::readUnsignedInt($in)
57 return new self($name, $valueIndexes);
60 public function write(ByteBufferWriter $out,
int $valueListSize) : void{
62 VarInt::writeUnsignedInt($out, count($this->valueIndexes));
64 foreach($this->valueIndexes as $index){
66 $valueListSize < 256 => Byte::writeUnsigned($out, $index),
67 $valueListSize < 65536 => LE::writeUnsignedShort($out, $index),
68 default => LE::writeUnsignedInt($out, $index)