Keywords
UpdatedThe words the compiler reserves, and the Luau each one emits.
actor
.actor. after the side puts a script in an Actor.afterRuns a block later: task.delay(seconds, function() ... end).asSplits a declaration's header from members on the same line: enum Color as Red, Green end.asyncReturns a Future.attributeDeclares an attribute: metadata the compiler reads and Attributes reads at runtime.awaitYields until the Future settles, then returns its values or rethrows its error.bandBitwise and.bnotBitwise not.borBitwise or.bxorBitwise exclusive or.caseOne arm of a match.classThe classes RFC, parsed ahead of Luau: class, open class, extends, public fields, and the metamethods the RFC allows.constA binding that cannot be reassigned.declareA definition-file statement.defaultThe fallback arm of a match.deleteCleans the value up, whatever it is: an Instance is destroyed, an RBXScriptConnection and a SignalConnection disconnect, a thread is cancelled, a function is called, a Scope closes, a Signal is destroyed, and any other table takes its Destroy, Disconnect, destroy, or disconnect method; the Roblox spelling wins when a table has both.destroyCalls the value's destroy method and nothing else.eachWrites one requires clause per entry of a list argument, with the entry as the member name.enumVariants with optional payloads.exportAdds a name to the table the module returns at the end of its scope.extendsThe base shapes of an interface.forLuau's loop, with two additions.fromThe module path of an import or export, or the side that fires a remote or asks a remote function: from client, from server, or from client or server for one both sides fire.globalglobal is removed.implMethods for a struct, an enum, or a foreign type such as Vector3 or string.importBrings names from another module into this file.inMembership.interfaceA structural object shape, sugar over type.isType test.localLuau's binding, with three forms of its own.macroA compile-time template with expression parameters, called as $name(...).matchPattern match, as a statement or an expression; match a, b with matches several values at once, each arm with as many patterns.messageA typed channel between actors.namespaceOne name over a group of declarations.newConstructs a value.onThe targets of an attribute declaration.parallelRuns the block in the parallel phase.privateA field or an impl method that only the struct's own methods reach.publicThe default visibility, written out for symmetry with private.readA read-only field.remoteA typed channel between server and client.replyThe answer of a message.requiresOne clause of an attribute contract: what the thing the attribute sits on must carry.satisfiesChecks the literal against T and reports a key of T the literal leaves out.shlShift left.shrShift right.structA record with fields.traitA behavior contract: method signatures, with a body as a default.tryReturns early with the Err, inside a function that returns Result.typeA name for a type.whereA filter on a loop or a conditional binding, and the guard of a match arm.withOpens the arms of a match.writeA write-only field.