On this page:
decl
decl_  meta.space
decl.macro
decl.nestable_  macro
decl_  meta.Group
decl_  meta.Nestable  Group
decl_  meta.pack_  s_  exp
8.12

7.5 Declaration Macros🔗ℹ

space

decl

The space for bindings of identifiers that can be used in declaration and nestable-declaration positions.

Provided as meta.

A compile-time value that identifies the same space as decl. See also SpaceMeta.

Like defn.macro but for defining a macro that can be used only in a module or interactive position — the same places where meta and module are allowed, for example.

Like defn.macro, but for forms that can also be used in namespaces that are witin a module or interactive position — the same places where export is allowed, for example.

syntax class

syntax_class decl_meta.Group:

  kind: ~group

 

syntax class

syntax_class decl_meta.NestableGroup:

  kind: ~group

Provided as meta.

Like defn_meta.Group, but for declarations and nestable declarations. The decl_meta.Group syntax class matches all groups that decl_meta.NestableGroup matches, plus ones that cannot be nested.

function

fun decl_meta.pack_s_exp(tree :: Any) :: Syntax

Provided as meta.

Similar to expr_meta.pack_s_exp, but for declarations.