Search results
Results from the WOW.Com Content Network
function p. q is syntactic sugar for p ["q"] = function. function builds a function. It doesn't declare it. Functions are first-class objects and can be assigned to variables, placed in tables, serialized into strings, and deserialized back out again. Think interpreted, not compiled.
Function names are often of the form p.myFunctionName, where p is the table from the return p at the bottom of your program. The reason for this is that you can only access functions that are entries in this table from the original #invoke statement. Functions for local use within the program can have any name.
Marshalling data between C and Lua functions is also done using the stack. To call a Lua function, arguments are pushed onto the stack, and then the lua_call is used to call the actual function. When writing a C function to be directly called from Lua, the arguments are read from the stack. Here is an example of calling a Lua function from C:
This module provides a consistent interface for processing boolean or boolean-style string input. While Lua allows the true and false boolean values, wikicode templates can only express boolean values through strings such as "yes", "no", etc. This module processes these kinds of strings and turns them into boolean input for Lua to process.
This function generates a string representation of any given Lua object. The idea is that if you copy the string this function produces it, and paste it back into a Lua program, then you should be able to reproduce the original object. This doesn't work for all values, but it should hold for simple cases.
Help:Lua for beginners; Help:Lua debugging – about debugging Lua modules; Wikipedia:Lua style guide – standards to improve the readability of code through consistency; Module:Sandbox provides a pseudo-namespace for experimenting with Lua modules
Wikipedia:Lua string functions – string performance considerations and limits; Wikipedia:Guide to Scribbling – how to write templates that use Scribunto/Lua; Wikipedia:Guide to Scribbling/Programmers' Quick start Guide to Lua – a list of essential points; Wikipedia:Comparable Lua functions to wikitext – how to convert wikitext to Lua
Invalid function name: len = string.long(my_str) - The string-length operator is hash mark '#' (as in: #my_str), or use function 'string.len(my_str)' but trying to use unknown function 'string.long(my_str)' will successfully pass during the pre-compile of edit-save, yet it will hit "Script error" when that portion of the Lua script is executed.