NAME ^

src/builtins/guts.pir - subs that are part of the internals, not for users

SUBS ^

!EXPORT(symbols, from :named('from') [, to :named('to')] )

Export symbols in namespace from to the namespace given by to. If to isn't given, then exports into the HLL global namespace. This function differs somewhat from Parrot's Exporter PMC in that it understands how to properly merge MultiSub PMCs.

!VAR

Helper function for implementing the VAR and .VAR macros.

!DOTYPECHECK

Checks that the value and the assignee are type-compatible and does the assignment.

!TYPECHECKPARAM

Checks the type of a parameter.

!SAMETYPE_EXACT

Takes two types and returns true if they match exactly (not accounting for any subtyping relations, etc).

!keyword_class(name)

Internal helper method to create a class.

!keyword_role(name)

Internal helper method to create a role.

!keyword_grammar(name)

Internal helper method to create a grammar.

!keyword_does(class, role_name)

Internal helper method to implement the functionality of the does keyword.

!keyword_has(class, attr_name, type)

Adds an attribute with the given name to the class or role.


parrot