name = $name; $this->argumentList = $argumentList; $this->options = $options; $this->context = $context; $this->rootContext = $rootContext; $this->blockParams = $blockParams; $this->func = $func; $this->inverseFunc = $inverseFunc; } public function getName(): string { return $this->name; } public function getContext(): array { return $this->context; } public function getRootContext(): array { return $this->rootContext; } public function getOptions(): stdClass { return $this->options; } /** * @return mixed[] */ public function getArgumentList(): array { return $this->argumentList; } public function hasOption(string $name): bool { return property_exists($this->options, $name); } /** * @return mixed */ public function getOption(string $name) { return $this->options->$name ?? null; } public function getFunction(): ?callable { return $this->func; } public function getInverseFunction(): ?callable { return $this->inverseFunc; } }