← All docs
is_subclass_of() — internals
Compiler internals for is_subclass_of(): lowering path, type checks, and runtime helpers.
is_subclass_of() — internals
Where it lives
- Signature:
src/builtins/callables/is_subclass_of.rs - Lowering:
src/codegen/lower_inst/builtins/types.rs:369 (lower_is_a_relation) - Function symbol:
lower_is_a_relation()
Lowering notes
- Lowers
is_a()andis_subclass_of()for object operands and literal targets.
Runtime helpers
No direct __rt_* helpers captured — the lowering is inlined or routes through another builtin.
Signature summary
function is_subclass_of(mixed $object_or_class, string $class, bool $allow_string = true): bool
What the type checker enforces
- Arity: takes 2–3 arguments (1 optional).
Eval interpreter (magician)
- Declaration:
crates/elephc-magician/src/interpreter/builtins/symbols/is_subclass_of.rs(eval_builtin!) - Dispatch hooks:
direct,values