NVelocity.Runtime.Directive
Class VelocimacroProxy

VelocimacroProxy.java a proxy Directive-derived object to fit with the current directive system

Fields inherited from class NVelocity.Runtime.Directive.Directive
rsvc

Constructor Summary
VelocimacroProxy()
        Initializes a new instance of the VelocimacroProxy class.

Property Summary
string[] ArgArray
string Macrobody
string Name
string Namespace
NVelocity.Runtime.Parser.Node.SimpleNode NodeTree
int NumArgs
int Type

Properties inherited from class NVelocity.Runtime.Directive.Directive
Column, Line

Method Summary
void init(NVelocity.Runtime.RuntimeServices rs, NVelocity.Context.InternalContextAdapter context, NVelocity.Runtime.Parser.Node.INode node)
         The major meat of VelocimacroProxy, init() checks the # of arguments, patches the macro body, renders the macro into an AST, and then inits the AST, so it is ready for quick rendering. Note that this is only AST dependant stuff. Not context.
bool render(NVelocity.Context.InternalContextAdapter context, System.IO.TextWriter writer, NVelocity.Runtime.Parser.Node.INode node)
         Renders the macro using the context
bool setupMacro(string[] callArgs, int[] callArgTypes)
         basic VM setup. Sets up the proxy args for this use, and parses the tree

Methods inherited from class NVelocity.Runtime.Directive.Directive
setLocation

Methods inherited from class System.Object
Equals, Finalize, GetHashCode, GetType, MemberwiseClone, ToString


Constructor Detail

VelocimacroProxy

public VelocimacroProxy()

Initializes a new instance of the VelocimacroProxy class.

Property Detail

ArgArray

public string[] ArgArray


Macrobody

public string Macrobody


Name

public string Name


Namespace

public string Namespace


NodeTree

public NVelocity.Runtime.Parser.Node.SimpleNode NodeTree


NumArgs

public int NumArgs


Type

public int Type

Method Detail

init

public void init(NVelocity.Runtime.RuntimeServices rs,
                 NVelocity.Context.InternalContextAdapter context,
                 NVelocity.Runtime.Parser.Node.INode node)

The major meat of VelocimacroProxy, init() checks the # of arguments, patches the macro body, renders the macro into an AST, and then inits the AST, so it is ready for quick rendering. Note that this is only AST dependant stuff. Not context.


render

public bool render(NVelocity.Context.InternalContextAdapter context,
                   System.IO.TextWriter writer,
                   NVelocity.Runtime.Parser.Node.INode node)

Renders the macro using the context


setupMacro

public bool setupMacro(string[] callArgs,
                       int[] callArgTypes)

basic VM setup. Sets up the proxy args for this use, and parses the tree