| @@ 138-149 (lines=12) @@ | ||
| 135 | /** |
|
| 136 | * @inheritdocs |
|
| 137 | */ |
|
| 138 | public function _global($name) { |
|
| 139 | assert('is_string($name)'); |
|
| 140 | ||
| 141 | if (array_key_exists($name, $this->globals)) { |
|
| 142 | return $this->globals[$name]; |
|
| 143 | } |
|
| 144 | ||
| 145 | $global = $this->create_node("global", ["name" => $name]); |
|
| 146 | $this->globals[$name] = $global; |
|
| 147 | ||
| 148 | return $global; |
|
| 149 | } |
|
| 150 | ||
| 151 | /** |
|
| 152 | * @inheritdocs |
|
| @@ 154-165 (lines=12) @@ | ||
| 151 | /** |
|
| 152 | * @inheritdocs |
|
| 153 | */ |
|
| 154 | public function _language_construct($name) { |
|
| 155 | assert('is_string($name)'); |
|
| 156 | ||
| 157 | if (array_key_exists($name, $this->language_constructs)) { |
|
| 158 | return $this->language_constructs[$name]; |
|
| 159 | } |
|
| 160 | ||
| 161 | $language_construct = $this->create_node("language construct", ["name" => $name]); |
|
| 162 | $this->language_constructs[$name] = $language_construct; |
|
| 163 | ||
| 164 | return $language_construct; |
|
| 165 | } |
|
| 166 | ||
| 167 | /** |
|
| 168 | * @inheritdocs |
|