Difference between revisions of "Luo"

From OpenEUO
Jump to: navigation, search
m (Live UO Methods)
m (Description)
Line 20: Line 20:
 
== Description ==
 
== Description ==
  
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, and it provides [http://en.wikipedia.org/wiki/Functor functor] methods that, when called, access the underlying values from the UO table.  Thus it provides a tool to pass a UO table variable name as an argument to a function and have the associated 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. Misspelled method names raise an immediate error where specified.  Thus, no special string processing/checking needs to be implemented.
+
While similar functionality can be obtained by passing around strings, the live uo methods have the advantage of being of type 'function' and passing argument checks where functions are expected. Misspelled method names raise an immediate error where specified.  Thus, no special string processing/checking is obviated.
  
 
== Live UO Methods ==
 
== Live UO Methods ==

Revision as of 23:47, 1 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, and it provides functor methods that, when called, access the underlying values from the UO table. Thus it provides a tool to pass a UO table variable name as an argument to a function and have the associated value retrieved at a later point in execution.

While similar functionality can be obtained by passing around strings, the live uo methods have the advantage of being of type 'function' and passing argument checks where functions are expected. Misspelled method names raise an immediate error where specified. Thus, no special string processing/checking is obviated.

Live UO Methods

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

See Also