feat(entity): add GlobalConstantDef class for namespace constant metadata

- Create GlobalConstantDef entity to store namespace/global constant metadata
- Add properties for type, codegenFinalized, initialization code, and name
- Include constructor with parameters for value expression and source details
- Implement metadata collection during preprocessing functionality
master
韩天峰 2 weeks ago
parent d8267c2f00
commit 9671641629
  1. 27
      src/Entity/GlobalConstantDef.php

@ -0,0 +1,27 @@
<?php
namespace TypePhp\Entity;
use PhpParser\Node;
/** Metadata for a namespace/global constant collected during preprocessing. */
final class GlobalConstantDef
{
public string $type;
public bool $codegenFinalized;
public string $initializationCode = '';
public string $afterInitializationCode = '';
public function __construct(
public string $name,
public string $value,
public ?Node\Expr $valueExpr,
public string $namespace,
public string $sourceFile,
string $type,
bool $codegenFinalized,
) {
$this->type = $type;
$this->codegenFinalized = $codegenFinalized;
}
}
Loading…
Cancel
Save