154 array $chainedSubCommandValues,
157 array $chainedSubCommandData,
160 array $enumConstraints,
163 $result->enumValues = $enumValues;
164 $result->chainedSubCommandValues = $chainedSubCommandValues;
165 $result->postfixes = $postfixes;
166 $result->enums = $enums;
167 $result->chainedSubCommandData = $chainedSubCommandData;
168 $result->commandData = $commandData;
169 $result->softEnums = $softEnums;
170 $result->enumConstraints = $enumConstraints;
175 $this->enumValues = [];
176 for($i = 0, $size = VarInt::readUnsignedInt($in); $i < $size; $i++){
177 $this->enumValues[] = CommonTypes::getString($in);
180 $this->chainedSubCommandValues = [];
181 for($i = 0, $size = VarInt::readUnsignedInt($in); $i < $size; $i++){
182 $this->chainedSubCommandValues[] = CommonTypes::getString($in);
185 $this->postfixes = [];
186 for($i = 0, $size = VarInt::readUnsignedInt($in); $i < $size; $i++){
187 $this->postfixes[] = CommonTypes::getString($in);
191 for($i = 0, $size = VarInt::readUnsignedInt($in); $i < $size; $i++){
192 $this->enums[] = CommandEnumRawData::read($in);
195 $this->chainedSubCommandData = [];
196 for($i = 0, $size = VarInt::readUnsignedInt($in); $i < $size; $i++){
197 $this->chainedSubCommandData[] = ChainedSubCommandRawData::read($in);
200 $this->commandData = [];
201 for($i = 0, $size = VarInt::readUnsignedInt($in); $i < $size; $i++){
202 $this->commandData[] = CommandRawData::read($in);
205 $this->softEnums = [];
206 for($i = 0, $size = VarInt::readUnsignedInt($in); $i < $size; $i++){
207 $this->softEnums[] = CommandSoftEnum::read($in);
210 $this->enumConstraints = [];
211 for($i = 0, $size = VarInt::readUnsignedInt($in); $i < $size; $i++){
212 $this->enumConstraints[] = CommandEnumConstraintRawData::read($in);
217 VarInt::writeUnsignedInt($out, count($this->enumValues));
218 foreach($this->enumValues as $value){
219 CommonTypes::putString($out, $value);
222 VarInt::writeUnsignedInt($out, count($this->chainedSubCommandValues));
223 foreach($this->chainedSubCommandValues as $value){
224 CommonTypes::putString($out, $value);
227 VarInt::writeUnsignedInt($out, count($this->postfixes));
228 foreach($this->postfixes as $postfix){
229 CommonTypes::putString($out, $postfix);
232 VarInt::writeUnsignedInt($out, count($this->enums));
233 foreach($this->enums as $enum){
237 VarInt::writeUnsignedInt($out, count($this->chainedSubCommandData));
238 foreach($this->chainedSubCommandData as $data){
242 VarInt::writeUnsignedInt($out, count($this->commandData));
243 foreach($this->commandData as $data){
247 VarInt::writeUnsignedInt($out, count($this->softEnums));
248 foreach($this->softEnums as $softEnum){
249 $softEnum->write($out);
252 VarInt::writeUnsignedInt($out, count($this->enumConstraints));
253 foreach($this->enumConstraints as $constraint){
254 $constraint->write($out);