1: <?php
2: namespace Pharborist\ControlStructures;
3:
4: use Pharborist\Node;
5: use Pharborist\ParenTrait;
6: use Pharborist\StatementNode;
7: use Pharborist\CommaListNode;
8:
9: /**
10: * A for control structure.
11: */
12: class ForNode extends StatementNode {
13: use ParenTrait;
14: use AltSyntaxTrait;
15:
16: /**
17: * @var CommaListNode
18: */
19: protected $initial;
20:
21: /**
22: * @var CommaListNode
23: */
24: protected $condition;
25:
26: /**
27: * @var CommaListNode
28: */
29: protected $step;
30:
31: /**
32: * @var Node
33: */
34: protected $body;
35:
36: /**
37: * @return CommaListNode
38: */
39: public function getInitial() {
40: return $this->initial;
41: }
42:
43: /**
44: * @return CommaListNode
45: */
46: public function getCondition() {
47: return $this->condition;
48: }
49:
50: /**
51: * @return CommaListNode
52: */
53: public function getStep() {
54: return $this->step;
55: }
56:
57: /**
58: * @return Node
59: */
60: public function getBody() {
61: return $this->body;
62: }
63: }
64: