1: <?php
2: namespace Pharborist\ControlStructures;
3:
4: use Pharborist\Node;
5: use Pharborist\ParenTrait;
6: use Pharborist\StatementNode;
7: use Pharborist\ExpressionNode;
8: use Pharborist\TokenNode;
9:
10: /**
11: * do-while control structure.
12: */
13: class DoWhileNode extends StatementNode {
14: use ParenTrait;
15:
16: /**
17: * @var Node
18: */
19: protected $body;
20:
21: /**
22: * @var TokenNode
23: */
24: protected $whileKeyword;
25:
26: /**
27: * @var ExpressionNode
28: */
29: protected $condition;
30:
31: /**
32: * @return Node
33: */
34: public function getBody() {
35: return $this->body;
36: }
37:
38: /**
39: * @return ExpressionNode
40: */
41: public function getCondition() {
42: return $this->condition;
43: }
44:
45: /**
46: * The T_WHILE keyword token.
47: *
48: * @return TokenNode
49: */
50: public function getWhileKeyword() {
51: return $this->whileKeyword;
52: }
53: }
54: