3 * Copyright (c) 2014, Facebook, Inc.
6 * This source code is licensed under the BSD-style license found in the
7 * LICENSE file in the "hack" directory of this source tree. An additional grant
8 * of patent rights can be found in the PATENTS file in the same directory.
12 abstract class TType
{
43 public Vector
<string> $ivar10;
44 public Vector
<Ty2
> $ivar11;
46 public Vector
<string> $ivar13;
47 public Map
<string, string> $ivar14;
50 public Map
<string, string> $ivar17;
51 public string $ivar18;
52 public string $ivar19;
55 public Vector
<string> $ivar22;
56 public Map
<string, Ty3
> $ivar23;
60 public Vector
<string> $ivar27;
61 public Vector
<string> $ivar28;
62 public string $ivar29;
63 public string $ivar30;
65 public Vector
<string> $ivar32;
66 public Vector
<Ty2
> $ivar33;
69 public Vector
<Ty2
> $ivar36;
70 public Vector
<string> $ivar37;
71 public string $ivar38;
72 public string $ivar39;
73 public string $ivar40;
74 public string $ivar41;
78 public string $ivar45;
79 public Map
<string, string> $ivar46;
80 public Map
<string, string> $ivar47;
81 public Vector
<Ty8
> $ivar48;
84 public Map
<int, Ty9
> $ivar51;
86 public string $ivar53;
88 public function __construct(?Indexish
<string, mixed> $vals = null) {
89 $this->ivar1
= (string)untyped_idx($vals, 'ivar1', '');
90 $this->ivar2
= (string)untyped_idx($vals, 'ivar2', '');
91 $this->ivar3
= (string)untyped_idx($vals, 'ivar3', '');
92 $this->ivar4
= (int)untyped_idx($vals, 'ivar4', 0);
93 $this->ivar5
= (string)untyped_idx($vals, 'ivar5', '');
94 $this->ivar6
= (string)untyped_idx($vals, 'ivar6', '');
95 $this->ivar7
= (string)untyped_idx($vals, 'ivar7', '');
96 $this->ivar8
= (bool)untyped_idx($vals, 'ivar8', false);
97 $this->ivar9
= untyped_idx($vals, 'ivar9', null);
98 $this->ivar10
= untyped_idx($vals, 'ivar10', Vector
{});
99 $this->ivar11
= untyped_idx($vals, 'ivar11', Vector
{});
100 $this->ivar12
= untyped_idx($vals, 'ivar12', null);
101 $this->ivar13
= untyped_idx($vals, 'ivar13', Vector
{});
102 $this->ivar14
= untyped_idx($vals, 'ivar14', Map
{});
103 $this->ivar15
= (int)untyped_idx($vals, 'ivar15', 0);
104 $this->ivar16
= (bool)untyped_idx($vals, 'ivar16', false);
105 $this->ivar17
= untyped_idx($vals, 'ivar17', Map
{});
106 $this->ivar18
= (string)untyped_idx($vals, 'ivar18', '');
107 $this->ivar19
= (string)untyped_idx($vals, 'ivar19', '');
108 $this->ivar20
= (int)untyped_idx($vals, 'ivar20', 0);
109 $this->ivar21
= (int)untyped_idx($vals, 'ivar21', 0);
110 $this->ivar22
= untyped_idx($vals, 'ivar22', Vector
{});
111 $this->ivar23
= untyped_idx($vals, 'ivar23', Map
{});
112 $this->ivar24
= untyped_idx($vals, 'ivar24', null);
113 $this->ivar25
= (int)untyped_idx($vals, 'ivar25', 0);
114 $this->ivar26
= (int)untyped_idx($vals, 'ivar26', 0);
115 $this->ivar27
= untyped_idx($vals, 'ivar27', Vector
{});
116 $this->ivar28
= untyped_idx($vals, 'ivar28', Vector
{});
117 $this->ivar29
= (string)untyped_idx($vals, 'ivar29', '');
118 $this->ivar30
= (string)untyped_idx($vals, 'ivar30', '');
119 $this->ivar31
= untyped_idx($vals, 'ivar31', null);
120 $this->ivar32
= untyped_idx($vals, 'ivar32', Vector
{});
121 $this->ivar33
= untyped_idx($vals, 'ivar33', Vector
{});
122 $this->ivar34
= (int)untyped_idx($vals, 'ivar34', 0);
123 $this->ivar35
= (bool)untyped_idx($vals, 'ivar35', false);
124 $this->ivar36
= untyped_idx($vals, 'ivar36', Vector
{});
125 $this->ivar37
= untyped_idx($vals, 'ivar37', Vector
{});
126 $this->ivar38
= (string)untyped_idx($vals, 'ivar38', '');
127 $this->ivar39
= (string)untyped_idx($vals, 'ivar39', '');
128 $this->ivar40
= (string)untyped_idx($vals, 'ivar40', '');
129 $this->ivar41
= (string)untyped_idx($vals, 'ivar41', '');
130 $this->ivar42
= untyped_idx($vals, 'ivar42', null);
131 $this->ivar43
= (int)untyped_idx($vals, 'ivar43', 0);
132 $this->ivar44
= untyped_idx($vals, 'ivar44', null);
133 $this->ivar45
= (string)untyped_idx($vals, 'ivar45', '');
134 $this->ivar46
= untyped_idx($vals, 'ivar46', Map
{});
135 $this->ivar47
= untyped_idx($vals, 'ivar47', Map
{});
136 $this->ivar48
= untyped_idx($vals, 'ivar48', Vector
{});
137 $this->ivar49
= (int)untyped_idx($vals, 'ivar49', 0);
138 $this->ivar50
= untyped_idx($vals, 'ivar50', null);
139 $this->ivar51
= untyped_idx($vals, 'ivar51', Map
{});
140 $this->ivar52
= untyped_idx($vals, 'ivar52', null);
141 $this->ivar53
= (string)untyped_idx($vals, 'ivar53', '');
144 public function read(TProtocol
$input) : int {
149 $xfer +
= $input->readStructBegin($fname);
152 $xfer +
= $input->readFieldBegin($fname, $ftype, $fid);
153 if ($ftype == TType
::STOP
) {
159 if ($ftype == TType
::STRING) {
160 $xfer +
= $input->readString($this->ivar1
);
162 $xfer +
= $input->skip($ftype);
166 if ($ftype == TType
::STRING) {
167 $xfer +
= $input->readString($this->ivar2
);
169 $xfer +
= $input->skip($ftype);
173 if ($ftype == TType
::STRING) {
174 $xfer +
= $input->readString($this->ivar3
);
176 $xfer +
= $input->skip($ftype);
180 if ($ftype == TType
::I64
) {
181 $xfer +
= $input->readI64($this->ivar4
);
183 $xfer +
= $input->skip($ftype);
187 if ($ftype == TType
::STRING) {
188 $xfer +
= $input->readString($this->ivar5
);
190 $xfer +
= $input->skip($ftype);
194 if ($ftype == TType
::STRING) {
195 $xfer +
= $input->readString($this->ivar6
);
197 $xfer +
= $input->skip($ftype);
201 if ($ftype == TType
::STRING) {
202 $xfer +
= $input->readString($this->ivar7
);
204 $xfer +
= $input->skip($ftype);
208 if ($ftype == TType
::BOOL) {
209 $xfer +
= $input->readBool($this->ivar8
);
211 $xfer +
= $input->skip($ftype);
215 if ($ftype == TType
::STRUCT
) {
216 $this->ivar9
= new Ty1();
217 $xfer +
= $this->ivar9
->read($input);
219 $xfer +
= $input->skip($ftype);
223 if ($ftype == TType
::LST
) {
225 $_val442 = Vector
{};
227 $xfer +
= $input->readListBegin($_etype446, $_size443);
228 for ($_i447 = 0; $_i447 < $_size443; ++
$_i447)
231 $xfer +
= $input->readString($elem448);
232 if ($elem448 !== null) {
233 $_val442 []= $elem448;
236 $xfer +
= $input->readListEnd();
237 $this->ivar10
= $_val442;
239 $xfer +
= $input->skip($ftype);
243 if ($ftype == TType
::LST
) {
245 $_val449 = Vector
{};
247 $xfer +
= $input->readListBegin($_etype453, $_size450);
248 for ($_i454 = 0; $_i454 < $_size450; ++
$_i454)
251 $elem455 = new Ty2();
252 $xfer +
= $elem455->read($input);
253 if ($elem455 !== null) {
254 $_val449 []= $elem455;
257 $xfer +
= $input->readListEnd();
258 $this->ivar11
= $_val449;
260 $xfer +
= $input->skip($ftype);
264 if ($ftype == TType
::STRUCT
) {
265 $this->ivar12
= new Ty2();
266 $xfer +
= $this->ivar12
->read($input);
268 $xfer +
= $input->skip($ftype);
272 if ($ftype == TType
::LST
) {
274 $_val456 = Vector
{};
276 $xfer +
= $input->readListBegin($_etype460, $_size457);
277 for ($_i461 = 0; $_i461 < $_size457; ++
$_i461)
280 $xfer +
= $input->readString($elem462);
281 if ($elem462 !== null) {
282 $_val456 []= $elem462;
285 $xfer +
= $input->readListEnd();
286 $this->ivar13
= $_val456;
288 $xfer +
= $input->skip($ftype);
292 if ($ftype == TType
::MAP
) {
297 $xfer +
= $input->readMapBegin($_ktype465, $_vtype466, $_size464);
298 for ($_i468 = 0; $_i468 < $_size464; ++
$_i468)
302 $xfer +
= $input->readString($key469);
303 $xfer +
= $input->readString($val470);
304 if ($key469 !== null && $val470 !== null) {
305 $_val463[$key469] = $val470;
308 $xfer +
= $input->readMapEnd();
309 $this->ivar14
= $_val463;
311 $xfer +
= $input->skip($ftype);
315 if ($ftype == TType
::I64
) {
316 $xfer +
= $input->readI64($this->ivar15
);
318 $xfer +
= $input->skip($ftype);
322 if ($ftype == TType
::BOOL) {
323 $xfer +
= $input->readBool($this->ivar16
);
325 $xfer +
= $input->skip($ftype);
329 if ($ftype == TType
::MAP
) {
334 $xfer +
= $input->readMapBegin($_ktype473, $_vtype474, $_size472);
335 for ($_i476 = 0; $_i476 < $_size472; ++
$_i476)
339 $xfer +
= $input->readString($key477);
340 $xfer +
= $input->readString($val478);
341 if ($key477 !== null && $val478 !== null) {
342 $_val471[$key477] = $val478;
345 $xfer +
= $input->readMapEnd();
346 $this->ivar17
= $_val471;
348 $xfer +
= $input->skip($ftype);
352 if ($ftype == TType
::STRING) {
353 $xfer +
= $input->readString($this->ivar18
);
355 $xfer +
= $input->skip($ftype);
359 if ($ftype == TType
::STRING) {
360 $xfer +
= $input->readString($this->ivar19
);
362 $xfer +
= $input->skip($ftype);
366 if ($ftype == TType
::I64
) {
367 $xfer +
= $input->readI64($this->ivar20
);
369 $xfer +
= $input->skip($ftype);
373 if ($ftype == TType
::I64
) {
374 $xfer +
= $input->readI64($this->ivar21
);
376 $xfer +
= $input->skip($ftype);
380 if ($ftype == TType
::LST
) {
382 $_val479 = Vector
{};
384 $xfer +
= $input->readListBegin($_etype483, $_size480);
385 for ($_i484 = 0; $_i484 < $_size480; ++
$_i484)
388 $xfer +
= $input->readString($elem485);
389 if ($elem485 !== null) {
390 $_val479 []= $elem485;
393 $xfer +
= $input->readListEnd();
394 $this->ivar22
= $_val479;
396 $xfer +
= $input->skip($ftype);
400 if ($ftype == TType
::MAP
) {
405 $xfer +
= $input->readMapBegin($_ktype488, $_vtype489, $_size487);
406 for ($_i491 = 0; $_i491 < $_size487; ++
$_i491)
410 $xfer +
= $input->readString($key492);
412 $xfer +
= $val493->read($input);
413 if ($key492 !== null && $val493 !== null) {
414 $_val486[$key492] = $val493;
417 $xfer +
= $input->readMapEnd();
418 $this->ivar23
= $_val486;
420 $xfer +
= $input->skip($ftype);
424 if ($ftype == TType
::STRUCT
) {
425 $this->ivar24
= new Ty4();
426 $xfer +
= $this->ivar24
->read($input);
428 $xfer +
= $input->skip($ftype);
432 if ($ftype == TType
::I64
) {
433 $xfer +
= $input->readI64($this->ivar25
);
435 $xfer +
= $input->skip($ftype);
439 if ($ftype == TType
::I32
) {
440 $xfer +
= $input->readI32($this->ivar26
);
442 $xfer +
= $input->skip($ftype);
446 if ($ftype == TType
::LST
) {
448 $_val494 = Vector
{};
450 $xfer +
= $input->readListBegin($_etype498, $_size495);
451 for ($_i499 = 0; $_i499 < $_size495; ++
$_i499)
454 $xfer +
= $input->readString($elem500);
455 if ($elem500 !== null) {
456 $_val494 []= $elem500;
459 $xfer +
= $input->readListEnd();
460 $this->ivar27
= $_val494;
462 $xfer +
= $input->skip($ftype);
466 if ($ftype == TType
::LST
) {
468 $_val501 = Vector
{};
470 $xfer +
= $input->readListBegin($_etype505, $_size502);
471 for ($_i506 = 0; $_i506 < $_size502; ++
$_i506)
474 $xfer +
= $input->readString($elem507);
475 if ($elem507 !== null) {
476 $_val501 []= $elem507;
479 $xfer +
= $input->readListEnd();
480 $this->ivar28
= $_val501;
482 $xfer +
= $input->skip($ftype);
486 if ($ftype == TType
::STRING) {
487 $xfer +
= $input->readString($this->ivar29
);
489 $xfer +
= $input->skip($ftype);
493 if ($ftype == TType
::STRING) {
494 $xfer +
= $input->readString($this->ivar30
);
496 $xfer +
= $input->skip($ftype);
500 if ($ftype == TType
::STRUCT
) {
501 $this->ivar31
= new Ty5();
502 $xfer +
= $this->ivar31
->read($input);
504 $xfer +
= $input->skip($ftype);
508 if ($ftype == TType
::LST
) {
510 $_val508 = Vector
{};
512 $xfer +
= $input->readListBegin($_etype512, $_size509);
513 for ($_i513 = 0; $_i513 < $_size509; ++
$_i513)
516 $xfer +
= $input->readString($elem514);
517 if ($elem514 !== null) {
518 $_val508 []= $elem514;
521 $xfer +
= $input->readListEnd();
522 $this->ivar32
= $_val508;
524 $xfer +
= $input->skip($ftype);
528 if ($ftype == TType
::LST
) {
530 $_val515 = Vector
{};
532 $xfer +
= $input->readListBegin($_etype519, $_size516);
533 for ($_i520 = 0; $_i520 < $_size516; ++
$_i520)
536 $elem521 = new Ty2();
537 $xfer +
= $elem521->read($input);
538 if ($elem521 !== null) {
539 $_val515 []= $elem521;
542 $xfer +
= $input->readListEnd();
543 $this->ivar33
= $_val515;
545 $xfer +
= $input->skip($ftype);
549 if ($ftype == TType
::I64
) {
550 $xfer +
= $input->readI64($this->ivar34
);
552 $xfer +
= $input->skip($ftype);
556 if ($ftype == TType
::BOOL) {
557 $xfer +
= $input->readBool($this->ivar35
);
559 $xfer +
= $input->skip($ftype);
563 if ($ftype == TType
::LST
) {
565 $_val522 = Vector
{};
567 $xfer +
= $input->readListBegin($_etype526, $_size523);
568 for ($_i527 = 0; $_i527 < $_size523; ++
$_i527)
571 $elem528 = new Ty2();
572 $xfer +
= $elem528->read($input);
573 if ($elem528 !== null) {
574 $_val522 []= $elem528;
577 $xfer +
= $input->readListEnd();
578 $this->ivar36
= $_val522;
580 $xfer +
= $input->skip($ftype);
584 if ($ftype == TType
::LST
) {
586 $_val529 = Vector
{};
588 $xfer +
= $input->readListBegin($_etype533, $_size530);
589 for ($_i534 = 0; $_i534 < $_size530; ++
$_i534)
592 $xfer +
= $input->readString($elem535);
593 if ($elem535 !== null) {
594 $_val529 []= $elem535;
597 $xfer +
= $input->readListEnd();
598 $this->ivar37
= $_val529;
600 $xfer +
= $input->skip($ftype);
604 if ($ftype == TType
::STRING) {
605 $xfer +
= $input->readString($this->ivar38
);
607 $xfer +
= $input->skip($ftype);
611 if ($ftype == TType
::STRING) {
612 $xfer +
= $input->readString($this->ivar39
);
614 $xfer +
= $input->skip($ftype);
618 if ($ftype == TType
::STRING) {
619 $xfer +
= $input->readString($this->ivar40
);
621 $xfer +
= $input->skip($ftype);
625 if ($ftype == TType
::STRING) {
626 $xfer +
= $input->readString($this->ivar41
);
628 $xfer +
= $input->skip($ftype);
632 if ($ftype == TType
::STRUCT
) {
633 $this->ivar42
= new Ty6();
634 $xfer +
= $this->ivar42
->read($input);
636 $xfer +
= $input->skip($ftype);
640 if ($ftype == TType
::I64
) {
641 $xfer +
= $input->readI64($this->ivar43
);
643 $xfer +
= $input->skip($ftype);
647 if ($ftype == TType
::STRUCT
) {
648 $this->ivar44
= new Ty7();
649 $xfer +
= $this->ivar44
->read($input);
651 $xfer +
= $input->skip($ftype);
655 if ($ftype == TType
::STRING) {
656 $xfer +
= $input->readString($this->ivar45
);
658 $xfer +
= $input->skip($ftype);
662 if ($ftype == TType
::MAP
) {
667 $xfer +
= $input->readMapBegin($_ktype538, $_vtype539, $_size537);
668 for ($_i541 = 0; $_i541 < $_size537; ++
$_i541)
672 $xfer +
= $input->readString($key542);
673 $xfer +
= $input->readString($val543);
674 if ($key542 !== null && $val543 !== null) {
675 $_val536[$key542] = $val543;
678 $xfer +
= $input->readMapEnd();
679 $this->ivar46
= $_val536;
681 $xfer +
= $input->skip($ftype);
685 if ($ftype == TType
::MAP
) {
690 $xfer +
= $input->readMapBegin($_ktype546, $_vtype547, $_size545);
691 for ($_i549 = 0; $_i549 < $_size545; ++
$_i549)
695 $xfer +
= $input->readString($key550);
696 $xfer +
= $input->readString($val551);
697 if ($key550 !== null && $val551 !== null) {
698 $_val544[$key550] = $val551;
701 $xfer +
= $input->readMapEnd();
702 $this->ivar47
= $_val544;
704 $xfer +
= $input->skip($ftype);
708 if ($ftype == TType
::LST
) {
710 $_val552 = Vector
{};
712 $xfer +
= $input->readListBegin($_etype556, $_size553);
713 for ($_i557 = 0; $_i557 < $_size553; ++
$_i557)
716 $elem558 = new Ty8();
717 $xfer +
= $elem558->read($input);
718 if ($elem558 !== null) {
719 $_val552 []= $elem558;
722 $xfer +
= $input->readListEnd();
723 $this->ivar48
= $_val552;
725 $xfer +
= $input->skip($ftype);
729 if ($ftype == TType
::I64
) {
730 $xfer +
= $input->readI64($this->ivar49
);
732 $xfer +
= $input->skip($ftype);
736 if ($ftype == TType
::STRUCT
) {
737 $this->ivar50
= new Ty3();
738 $xfer +
= $this->ivar50
->read($input);
740 $xfer +
= $input->skip($ftype);
744 if ($ftype == TType
::MAP
) {
749 $xfer +
= $input->readMapBegin($_ktype561, $_vtype562, $_size560);
750 for ($_i564 = 0; $_i564 < $_size560; ++
$_i564)
754 $xfer +
= $input->readI32($key565);
756 $xfer +
= $val566->read($input);
757 if ($key565 !== null && $val566 !== null) {
758 $_val559[$key565] = $val566;
761 $xfer +
= $input->readMapEnd();
762 $this->ivar51
= $_val559;
764 $xfer +
= $input->skip($ftype);
768 if ($ftype == TType
::STRUCT
) {
769 $this->ivar52
= new Ty10();
770 $xfer +
= $this->ivar52
->read($input);
772 $xfer +
= $input->skip($ftype);
776 if ($ftype == TType
::STRING) {
777 $xfer +
= $input->readString($this->ivar53
);
779 $xfer +
= $input->skip($ftype);
783 $xfer +
= $input->skip($ftype);
786 $xfer +
= $input->readFieldEnd();
788 $xfer +
= $input->readStructEnd();