Skip to content

Docs: capabilities-syntax rows for __DIR__, __FILE__, __LINE__ (#85) #706

@PurHur

Description

@PurHur

Problem

docs/capabilities-syntax.md documents __CLASS__ / __METHOD__ / __FUNCTION__ via #199 but has no rows for path magic constants __DIR__, __FILE__, __LINE__.

examples/003-MiniWebApp depends on __DIR__ for every template include (public/index.php, src/Router.php, templates/layout.php). Contributors cannot see VM vs JIT vs AOT status without reading #85 in isolation.

Goal

Add curated rows to script/capability-syntax-lib.php → regenerate docs/capabilities-syntax.md:

Construct VM JIT AOT Issue
__DIR__ / __FILE__ (compile-time fold) yes partial partial #85, #462
__DIR__ runtime (non-folded include) partial no blocked #85, #707
__LINE__ partial partial partial #85

Statuses should reflect ConstStringFolder, SourceBundler, and known JIT gaps (#475).

Scope

  • Extend syntaxNorthStarDefinitions() or add pathMagicConstantDefinitions()
  • Regenerate docs: php script/capability-syntax.php
  • Optional: CapabilitySyntaxTest asserts rows exist

Acceptance criteria

php script/capability-syntax.php
grep '__DIR__' docs/capabilities-syntax.md
./script/ci-fast.sh --filter CapabilitySyntaxTest

Verification

Local/Docker only — not GitHub Actions.

Dependencies

Links

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions