Ferreteria/v0.6/clade/IO/Aspect/Connx/Stream/aux/Q/Updater

From Woozle Writes Code
< Ferreteria‎ | v0.6‎ | clade‎ | IO‎ | Aspect‎ | Connx‎ | Stream
Jump to navigation Jump to search
clade: IO\Aspect\Connx\Stream\aux\Q\Updater
Clade Family
QVar Updater (none)
Clade Aliases
Alias Clade
Base* [ca,i] Data\Mem\QVar
SubjectIface IO\Aspect\Connx\Stream\aux\Updater
Subpages

About

  • Purpose: QObj-workalike for IO\Aspect\Connx\Stream\aux\Updater

Code

as of 2026-03-08 (working well enough):

interface iUpdater extends BaseIface {
    // NEW (unabstractable)
    function HasIt() : bool;
    function SetIt(SubjectIface $o);
    function GetIt() : SubjectIface;
    // NEW (specialty)
    function OnBefore();
    function OnIterate();
    function OnAfter();
}
class cUpdater extends BaseClass implements iUpdater {

    // ++ CONFIG ++ //

    // CEMENT
    public function TypeOk(mixed $v) : bool { return is_a($v,SubjectIface::class); }

    // -- CONFIG -- //
    // ++ ACCESS ++ //

    public function HasIt() : bool            { return $this->HasObj(); }
    public function SetIt(SubjectIface $o)    { $this->SetObj($o); }
    public function GetIt() : SubjectIface    { return $this->GetObj(); }

    // -- ACCESS -- //
    // ++ EVENTS ++ //

    public function OnBefore() { if ($this->HasIt()) $this->GetIt()->OnBefore(); }
    public function OnIterate() { if ($this->HasIt()) $this->GetIt()->OnIterate(); }
    public function OnAfter()  { if ($this->HasIt()) $this->GetIt()->OnAfter(); }

    // -- EVENTS -- //
}