Ferreteria/v0.6/clade/Sys/FileSys/Aspect/Ident/spex/PSpec

From WoozleCodes
Jump to navigation Jump to search
clade: Sys\FileSys\Aspect\Ident\spex\PSpec
Clade Family
Str PSpec (none)
Clade Aliases
Alias Clade
Base* [c,i] Data\Mem\QVar\RW\Str
ChainIface Sys\FileSys\Aspect\Ident\spex\PSpecChain
QObj* [c,i] Data\Mem\QVar\RW\Obj
SelfIface Sys\FileSys\Aspect\Ident\spex\PSpec
StackIface Sys\Data\Things\Stack
StackString Sys\FileSys\Aspect\Ident\spex\aux\Stack
Subpages

About

  • Purpose: an on-device file-path, consisting of a set of zero or more segments separated by a directory separator (as determined by PHP's built-in DIRECTORY_SEPARATOR constant)
    • Each segment is represented by a PName object.

Pages

History

2025-11-06 started (purpose was: non-base segment in a filespec)
2026-05-05 Moved from Ident/stringer/Chain/TwigIdent/spex/FSLink.
  • It always made more sense to call a chain-element a "link", but I didn't want to call it that because that term is overloaded for at least two other things (HTML links and filesystem links).
  • Prefixing all the "spex" clades with "FS", though, removes the ambiguity.
2026-05-28 ToNode() doesn't belong here because this may not have the full filespec; removed it. If it's needed, it should go in FSChain (renamed to PathChain).
2026-06-02 Changed "FSLink" to "FSPiece" for name-length-matching with FSChain and to avoid confusion with link-files.
2026-06-03 Renamed FSPiecePathPiece.
2026-06-05 Renamed PathPiecePSpecPiece.
2026-06-23 Reparenting from Str to StandardBase because I need to be sure that confusion isn't happening around what it means to use [Get/Set][It/Str]() on this clade. (It currently means "just the <filename.ext>", but maybe something is calling it thinking it means the whole path?)
2026-06-27 $SPSpec is now the default source-of-truth. PName no longer maintains identity (so far; may need an index); PSpec builds $ASNames (array of name-strings) and $AONames (array of PName objects) as needed.