Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Language Reference

Keywords

ContextKeywordDescription
ModulesmoduleDeclare modules or implementations
ModulesimportImport items from other modules
ModulesexportMake item available to rest of current package
ModulespublicMake item available to external packages
TypesstructDeclare struct type
TypesenumDeclare enum types
TypestypeAlias types
TypestraitDeclare traits
FunctionsfuncDeclare functions
FunctionsdoDeclare arguments in a block literal
FunctionsblockBlock type literal
PatternsletDeclare variables
PatternsmutMake place mutable
PatternssetAssign value to place
PatternsmatchPattern match an value

Punctuation

NameSymbolDescription
=Assignment, labeled parameters
.Pipeline
;Statement ending
,General purpose separator
:Type ascription
()Parameters, arguments, grouped expressions
{}Code blocks
<>Type generic
!Label declaration, label call
?Implicit argument, backpassing
->Return type ascription, match branches
&Shared references
$Unique References