| @@ 107-118 (lines=12) @@ | ||
| 104 | /** |
|
| 105 | * @inheritdocs |
|
| 106 | */ |
|
| 107 | public function _global($name) { |
|
| 108 | assert('is_string($name)'); |
|
| 109 | ||
| 110 | if (array_key_exists($name, $this->globals)) { |
|
| 111 | return $this->globals[$name]; |
|
| 112 | } |
|
| 113 | ||
| 114 | $global = $this->create_node("global", ["name" => $name]); |
|
| 115 | $this->globals[$name] = $global; |
|
| 116 | ||
| 117 | return $global; |
|
| 118 | } |
|
| 119 | ||
| 120 | /** |
|
| 121 | * @inheritdocs |
|
| @@ 123-134 (lines=12) @@ | ||
| 120 | /** |
|
| 121 | * @inheritdocs |
|
| 122 | */ |
|
| 123 | public function _language_construct($name) { |
|
| 124 | assert('is_string($name)'); |
|
| 125 | ||
| 126 | if (array_key_exists($name, $this->language_constructs)) { |
|
| 127 | return $this->language_constructs[$name]; |
|
| 128 | } |
|
| 129 | ||
| 130 | $language_construct = $this->create_node("language construct", ["name" => $name]); |
|
| 131 | $this->language_constructs[$name] = $language_construct; |
|
| 132 | ||
| 133 | return $language_construct; |
|
| 134 | } |
|
| 135 | ||
| 136 | /** |
|
| 137 | * @inheritdocs |
|