LibRPC Z: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 24: | Line 24: | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}} print( b ) | {{!}} '''print( b )''' <br />where b is some global variable | ||
{{!}} RFC("print")(Z("b")) | {{!}} RFC("print")(Z("b")) | ||
{{!}} | {{!}} | ||
{{!}} - | {{!}}- | ||
{{!}} | {{!}} '''print(b.x)''' <br />b is Vector | ||
{{!}} | {{!}} RFC("print")(Z("b", "x") ) | ||
{{!}} | {{!}} | ||
{{!}}} | {{!}}} | ||
| | | | ||
retvals=Returns userdata which can be passed to F/Fa/RFC/RFCa or Z itself.| | |||
relfuncs=*[[LibRPC_F|F]]}} | relfuncs=*[[LibRPC_F|F]]}} |
Revision as of 05:06, 27 June 2023
This function was added in LibRPC (API 1.3) (not released as on writing this page) and will not work on previous versions.
Description:
Creates userdata when passed to RFC/F/Fa/RFCa has the effect of rawget. Unlike other functions, this is a first order function.
Parameters:
( p1, p2, ... )
p1 : If string, a rawget will be performed on the roottable and if p2 is present rawget will be performed on this object. If p1 is not string, then p2 is required.
Optional Parameters
p2, p3, ... : A key which will be popped and get operation performed on p(i-1)
Return Values:
Returns userdata which can be passed to F/Fa/RFC/RFCa or Z itself.
Example
Goal | Corresponding code | |
---|---|---|
FindPlayer( 0 ).Name | Z( F("FindPlayer")(0), "Name" ) | |
FindPlayer( 0 ).Pos.x | Z( F("FindPlayer")(0), "Pos", "x" ) | |
print( b ) where b is some global variable |
RFC("print")(Z("b")) | |
print(b.x) b is Vector |
RFC("print")(Z("b", "x") ) |
Related Functions
The following functions may be helpful as they relate to this function in one way or another.