Vow::Exportable
Inherits Vow::Mountable
include Vow::Exportable turns a class into a dispatch surface whose wire
methods are exactly the ones you annotate with @[Vow::Export]. Everything
else stays private to Crystal. This is the explicit, opt-in flavor.
class API include Vow::Exportable
@[Vow::Export]
def greet(name : String) : String
"Hello, #{name}!"
end
end
The compiler generates the dispatch glue via Vow::Exportable::Generated
(see there for what vow_install / vow_descriptors / vow_types do and
the compile-time contract every exported signature must satisfy).