class StubEnumParser implements MultiEntityStubParserInterface (View source)

Parses PHP enum nodes from AST into PHPEnum domain objects.

Parser-agnostic: works with any AST node implementing EnumNode interface. Uses dedicated parsers for child entities (methods, constants).

Methods

__construct(EnumNodeExtractorInterface|null $nodeExtractor = null, PhpDocParserInterface|null $phpDocParser = null, AvailableVersionParserInterface|null $versionParser = null)

No description

parse(string $stubCode)

Parses stub code string into PHPEnum.

parseNode(EnumNode $node, array $imports = [])

Parses an enum AST node into PHPEnum domain object.

array
extractAndParseAll(string $stubContent)

Extract and parse all enums from stub content.

Details

__construct(EnumNodeExtractorInterface|null $nodeExtractor = null, PhpDocParserInterface|null $phpDocParser = null, AvailableVersionParserInterface|null $versionParser = null)

No description

Parameters

EnumNodeExtractorInterface|null $nodeExtractor
PhpDocParserInterface|null $phpDocParser
AvailableVersionParserInterface|null $versionParser

PHPEnum parse(string $stubCode)

Parses stub code string into PHPEnum.

This is a convenience method that delegates to parseNode().

Parameters

string $stubCode

PHP stub code

Return Value

PHPEnum

PHPEnum parseNode(EnumNode $node, array $imports = [])

Parses an enum AST node into PHPEnum domain object.

Works with any EnumNode implementation (parser-agnostic).

Parameters

EnumNode $node

The enum AST node with namespace set

array $imports

Map of import aliases to fully qualified names

Return Value

PHPEnum

array extractAndParseAll(string $stubContent)

Extract and parse all enums from stub content.

Parameters

string $stubContent

The PHP stub file content to parse

Return Value

array

Array of parsed entities (PHPClass, PHPFunction, etc.). Returns empty array if no entities found.