Macro.struct-exclamation-mark
You're seeing just the function
struct-exclamation-mark
, go back to Macro module for more information.
Specs
struct!(module, Macro.Env.t()) :: %{__struct__: module} when module: module()
Expands the struct given by module
in the given env
.
This is useful when a struct needs to be expanded at compilation time and the struct being expanded may or may not have been compiled. This function is also capable of expanding structs defined under the module being compiled.
It will raise CompileError
if the struct is not available.
From Elixir v1.12, calling this function also adds an export
dependency on the given struct.