blob: b342fb2dc2c6e353dbda6cd42048ebaf8d4d31a3 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc on Wed Apr 14 08:26:33 EDT 2004 -->
<TITLE>
Velocity 1.4 API: Class VelocimacroProxy
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/VelocimacroProxy.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/velocity/runtime/directive/Parse.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/velocity/runtime/directive/VMProxyArg.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html" TARGET="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="VelocimacroProxy.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.velocity.runtime.directive</FONT>
<BR>
Class VelocimacroProxy</H2>
<PRE>
java.lang.Object
|
+--<A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html">org.apache.velocity.runtime.directive.Directive</A>
|
+--<B>org.apache.velocity.runtime.directive.VelocimacroProxy</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>java.lang.Cloneable, <A HREF="../../../../../org/apache/velocity/runtime/directive/DirectiveConstants.html">DirectiveConstants</A></DD>
</DL>
<HR>
<DL>
<DT>public class <B>VelocimacroProxy</B><DT>extends <A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html">Directive</A></DL>
<P>
VelocimacroProxy.java
a proxy Directive-derived object to fit with the current directive system
<P>
<DL>
<DT><B>Version: </B><DD>$Id: VelocimacroProxy.java,v 1.27.4.1 2004/03/03 23:22:56 geirm Exp $</DD>
<DT><B>Author: </B><DD><a href="mailto:geirm@optonline.net">Geir Magnusson Jr.</a></DD>
</DL>
<HR>
<P>
<!-- ======== INNER CLASS SUMMARY ======== -->
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Field Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.lang.String[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#argArray">argArray</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.lang.String[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#callingArgs">callingArgs</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#callingArgTypes">callingArgTypes</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#init">init</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#macroBody">macroBody</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#macroName">macroName</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#namespace">namespace</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;<A HREF="../../../../../org/apache/velocity/runtime/parser/node/SimpleNode.html">SimpleNode</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#nodeTree">nodeTree</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#numMacroArgs">numMacroArgs</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.util.HashMap</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#proxyArgHash">proxyArgHash</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.velocity.runtime.directive.Directive"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Fields inherited from class org.apache.velocity.runtime.directive.<A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html">Directive</A></B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#column">column</A>, <A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#line">line</A>, <A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#rsvc">rsvc</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.velocity.runtime.directive.DirectiveConstants"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Fields inherited from interface org.apache.velocity.runtime.directive.<A HREF="../../../../../org/apache/velocity/runtime/directive/DirectiveConstants.html">DirectiveConstants</A></B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/DirectiveConstants.html#BLOCK">BLOCK</A>, <A HREF="../../../../../org/apache/velocity/runtime/directive/DirectiveConstants.html#LINE">LINE</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#VelocimacroProxy()">VelocimacroProxy</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Method Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;java.lang.String[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#getArgArray(org.apache.velocity.runtime.parser.node.Node)">getArgArray</A></B>(<A HREF="../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</A>&nbsp;node)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gets the args to the VM from the instance-use AST</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#getName()">getName</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return name of this Velocimacro.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#getNumArgs()">getNumArgs</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;returns the number of ars needed for this VM</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#getType()">getType</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Velocimacros are always LINE
type directives.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#init(org.apache.velocity.runtime.RuntimeServices, org.apache.velocity.context.InternalContextAdapter, org.apache.velocity.runtime.parser.node.Node)">init</A></B>(<A HREF="../../../../../org/apache/velocity/runtime/RuntimeServices.html">RuntimeServices</A>&nbsp;rs,
<A HREF="../../../../../org/apache/velocity/context/InternalContextAdapter.html">InternalContextAdapter</A>&nbsp;context,
<A HREF="../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</A>&nbsp;node)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;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.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#parseTree(java.lang.String[])">parseTree</A></B>(java.lang.String[]&nbsp;callArgs)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;parses the macro.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#render(org.apache.velocity.context.InternalContextAdapter, java.io.Writer, org.apache.velocity.runtime.parser.node.Node)">render</A></B>(<A HREF="../../../../../org/apache/velocity/context/InternalContextAdapter.html">InternalContextAdapter</A>&nbsp;context,
java.io.Writer&nbsp;writer,
<A HREF="../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</A>&nbsp;node)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Renders the macro using the context</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#setArgArray(java.lang.String[])">setArgArray</A></B>(java.lang.String[]&nbsp;arr)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sets the array of arguments specified in the macro definition</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#setMacrobody(java.lang.String)">setMacrobody</A></B>(java.lang.String&nbsp;mb)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the orignal macro body.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#setName(java.lang.String)">setName</A></B>(java.lang.String&nbsp;name)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sets the directive name of this VM</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#setNamespace(java.lang.String)">setNamespace</A></B>(java.lang.String&nbsp;ns)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#setNodeTree(org.apache.velocity.runtime.parser.node.SimpleNode)">setNodeTree</A></B>(<A HREF="../../../../../org/apache/velocity/runtime/parser/node/SimpleNode.html">SimpleNode</A>&nbsp;tree)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#setupMacro(java.lang.String[], int[])">setupMacro</A></B>(java.lang.String[]&nbsp;callArgs,
int[]&nbsp;callArgTypes)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;basic VM setup.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>private &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../org/apache/velocity/runtime/directive/VelocimacroProxy.html#setupProxyArgs(java.lang.String[], int[])">setupProxyArgs</A></B>(java.lang.String[]&nbsp;callArgs,
int[]&nbsp;callArgTypes)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.velocity.runtime.directive.Directive"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Methods inherited from class org.apache.velocity.runtime.directive.<A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html">Directive</A></B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#getColumn()">getColumn</A>, <A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#getLine()">getLine</A>, <A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#setLocation(int, int)">setLocation</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Methods inherited from class java.lang.Object</B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><clinit>, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Field Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="macroName"><!-- --></A><H3>
macroName</H3>
<PRE>
private java.lang.String <B>macroName</B></PRE>
<DL>
</DL>
<HR>
<A NAME="macroBody"><!-- --></A><H3>
macroBody</H3>
<PRE>
private java.lang.String <B>macroBody</B></PRE>
<DL>
</DL>
<HR>
<A NAME="argArray"><!-- --></A><H3>
argArray</H3>
<PRE>
private java.lang.String[] <B>argArray</B></PRE>
<DL>
</DL>
<HR>
<A NAME="nodeTree"><!-- --></A><H3>
nodeTree</H3>
<PRE>
private <A HREF="../../../../../org/apache/velocity/runtime/parser/node/SimpleNode.html">SimpleNode</A> <B>nodeTree</B></PRE>
<DL>
</DL>
<HR>
<A NAME="numMacroArgs"><!-- --></A><H3>
numMacroArgs</H3>
<PRE>
private int <B>numMacroArgs</B></PRE>
<DL>
</DL>
<HR>
<A NAME="namespace"><!-- --></A><H3>
namespace</H3>
<PRE>
private java.lang.String <B>namespace</B></PRE>
<DL>
</DL>
<HR>
<A NAME="init"><!-- --></A><H3>
init</H3>
<PRE>
private boolean <B>init</B></PRE>
<DL>
</DL>
<HR>
<A NAME="callingArgs"><!-- --></A><H3>
callingArgs</H3>
<PRE>
private java.lang.String[] <B>callingArgs</B></PRE>
<DL>
</DL>
<HR>
<A NAME="callingArgTypes"><!-- --></A><H3>
callingArgTypes</H3>
<PRE>
private int[] <B>callingArgTypes</B></PRE>
<DL>
</DL>
<HR>
<A NAME="proxyArgHash"><!-- --></A><H3>
proxyArgHash</H3>
<PRE>
private java.util.HashMap <B>proxyArgHash</B></PRE>
<DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="VelocimacroProxy()"><!-- --></A><H3>
VelocimacroProxy</H3>
<PRE>
public <B>VelocimacroProxy</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Method Detail</B></FONT></TD>
</TR>
</TABLE>
<A NAME="getName()"><!-- --></A><H3>
getName</H3>
<PRE>
public java.lang.String <B>getName</B>()</PRE>
<DL>
<DD>Return name of this Velocimacro.<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#getName()">getName</A></CODE> in class <CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html">Directive</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getType()"><!-- --></A><H3>
getType</H3>
<PRE>
public int <B>getType</B>()</PRE>
<DL>
<DD>Velocimacros are always LINE
type directives.<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#getType()">getType</A></CODE> in class <CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html">Directive</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="setName(java.lang.String)"><!-- --></A><H3>
setName</H3>
<PRE>
public void <B>setName</B>(java.lang.String&nbsp;name)</PRE>
<DL>
<DD>sets the directive name of this VM</DL>
<HR>
<A NAME="setArgArray(java.lang.String[])"><!-- --></A><H3>
setArgArray</H3>
<PRE>
public void <B>setArgArray</B>(java.lang.String[]&nbsp;arr)</PRE>
<DL>
<DD>sets the array of arguments specified in the macro definition</DL>
<HR>
<A NAME="setNodeTree(org.apache.velocity.runtime.parser.node.SimpleNode)"><!-- --></A><H3>
setNodeTree</H3>
<PRE>
public void <B>setNodeTree</B>(<A HREF="../../../../../org/apache/velocity/runtime/parser/node/SimpleNode.html">SimpleNode</A>&nbsp;tree)</PRE>
<DL>
</DL>
<HR>
<A NAME="getNumArgs()"><!-- --></A><H3>
getNumArgs</H3>
<PRE>
public int <B>getNumArgs</B>()</PRE>
<DL>
<DD>returns the number of ars needed for this VM</DL>
<HR>
<A NAME="setMacrobody(java.lang.String)"><!-- --></A><H3>
setMacrobody</H3>
<PRE>
public void <B>setMacrobody</B>(java.lang.String&nbsp;mb)</PRE>
<DL>
<DD>Sets the orignal macro body. This is simply the cat of the macroArray, but the
Macro object creates this once during parsing, and everyone shares it.
Note : it must not be modified.</DL>
<HR>
<A NAME="setNamespace(java.lang.String)"><!-- --></A><H3>
setNamespace</H3>
<PRE>
public void <B>setNamespace</B>(java.lang.String&nbsp;ns)</PRE>
<DL>
</DL>
<HR>
<A NAME="render(org.apache.velocity.context.InternalContextAdapter, java.io.Writer, org.apache.velocity.runtime.parser.node.Node)"><!-- --></A><H3>
render</H3>
<PRE>
public boolean <B>render</B>(<A HREF="../../../../../org/apache/velocity/context/InternalContextAdapter.html">InternalContextAdapter</A>&nbsp;context,
java.io.Writer&nbsp;writer,
<A HREF="../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</A>&nbsp;node)
throws java.io.IOException,
<A HREF="../../../../../org/apache/velocity/exception/MethodInvocationException.html">MethodInvocationException</A></PRE>
<DL>
<DD>Renders the macro using the context<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#render(org.apache.velocity.context.InternalContextAdapter, java.io.Writer, org.apache.velocity.runtime.parser.node.Node)">render</A></CODE> in class <CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html">Directive</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="init(org.apache.velocity.runtime.RuntimeServices, org.apache.velocity.context.InternalContextAdapter, org.apache.velocity.runtime.parser.node.Node)"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>(<A HREF="../../../../../org/apache/velocity/runtime/RuntimeServices.html">RuntimeServices</A>&nbsp;rs,
<A HREF="../../../../../org/apache/velocity/context/InternalContextAdapter.html">InternalContextAdapter</A>&nbsp;context,
<A HREF="../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</A>&nbsp;node)
throws java.lang.Exception</PRE>
<DL>
<DD>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.<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html#init(org.apache.velocity.runtime.RuntimeServices, org.apache.velocity.context.InternalContextAdapter, org.apache.velocity.runtime.parser.node.Node)">init</A></CODE> in class <CODE><A HREF="../../../../../org/apache/velocity/runtime/directive/Directive.html">Directive</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="setupMacro(java.lang.String[], int[])"><!-- --></A><H3>
setupMacro</H3>
<PRE>
public boolean <B>setupMacro</B>(java.lang.String[]&nbsp;callArgs,
int[]&nbsp;callArgTypes)</PRE>
<DL>
<DD>basic VM setup. Sets up the proxy args for this
use, and parses the tree</DL>
<HR>
<A NAME="parseTree(java.lang.String[])"><!-- --></A><H3>
parseTree</H3>
<PRE>
private void <B>parseTree</B>(java.lang.String[]&nbsp;callArgs)</PRE>
<DL>
<DD>parses the macro. We need to do this here, at init time, or else
the local-scope template feature is hard to get to work :)</DL>
<HR>
<A NAME="setupProxyArgs(java.lang.String[], int[])"><!-- --></A><H3>
setupProxyArgs</H3>
<PRE>
private void <B>setupProxyArgs</B>(java.lang.String[]&nbsp;callArgs,
int[]&nbsp;callArgTypes)</PRE>
<DL>
</DL>
<HR>
<A NAME="getArgArray(org.apache.velocity.runtime.parser.node.Node)"><!-- --></A><H3>
getArgArray</H3>
<PRE>
private java.lang.String[] <B>getArgArray</B>(<A HREF="../../../../../org/apache/velocity/runtime/parser/node/Node.html">Node</A>&nbsp;node)</PRE>
<DL>
<DD>gets the args to the VM from the instance-use AST</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/VelocimacroProxy.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../org/apache/velocity/runtime/directive/Parse.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../org/apache/velocity/runtime/directive/VMProxyArg.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html" TARGET="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="VelocimacroProxy.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->
<HR>
Copyright © 2002 Apache Software Foundation. All Rights Reserved.
</BODY>
</HTML>