Difference between revisions of "Luo"

From OpenEUO
Jump to: navigation, search
m (Description)
m (Description)
Line 21: Line 21:
  
 
luo stands for 'live uo' table, it provides [http://en.wikipedia.org/wiki/Functor functors] that, when called, access the underlying values from the UO table.  Thus it provides a tool to pass a UO table variable name to a function and have the value retrieved at a later point in execution.
 
luo stands for 'live uo' table, it provides [http://en.wikipedia.org/wiki/Functor functors] that, when called, access the underlying values from the UO table.  Thus it provides a tool to pass a UO table variable name to a function and have the value retrieved at a later point in execution.
 +
 +
While similar functionality can be obtain by passing around strings, the live uo methods have the advantage of being of type 'function' and passing argument checks where functions are expected, thus no special string handling needs to be implemented, and misspelled method names raise an immediate error where specified.
  
 
== Live UO Methods ==
 
== Live UO Methods ==

Revision as of 00:42, 2 November 2010

Calling Convention

Call

local l = sl.luo

Args

n/a

Result

l is a table with all live uo methods

Example Usage

local l = sl.luo
local waitforchange = function(old, live)
  while old == live() then
    wait(100)
  end
end
waitforchange(UO.Sex, l.Sex)
print('Something's very wrong!')

Description

luo stands for 'live uo' table, it provides functors that, when called, access the underlying values from the UO table. Thus it provides a tool to pass a UO table variable name to a function and have the value retrieved at a later point in execution.

While similar functionality can be obtain by passing around strings, the live uo methods have the advantage of being of type 'function' and passing argument checks where functions are expected, thus no special string handling needs to be implemented, and misspelled method names raise an immediate error where specified.

Live UO Methods

There is a method for each corresponding name in the UO table. Additionally, the following methods return tables of UO values with a single call:

See Also