<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_37) on Tue Apr 23 20:25:58 CST 2013 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Util (Java Prettify)
</TITLE>

<META NAME="date" CONTENT="2013-04-23">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style">

<SCRIPT type="text/javascript">
function windowTitle()
{
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="Util (Java Prettify)";
    }
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>

</HEAD>

<BODY BGCOLOR="white" onload="windowTitle();">
<HR>


<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <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/Util.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-files/index-1.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="../../prettify/parser/Prettify.CreateSimpleLexer.html" title="class in prettify.parser"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../index.html?prettify/parser/Util.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Util.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&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;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
prettify.parser</FONT>
<BR>
Class Util</H2>
<PRE>
java.lang.Object
  <IMG SRC="../../resources/inherit.gif" ALT="extended by "><B>prettify.parser.Util</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>Util</B><DT>extends java.lang.Object</DL>
</PRE>

<P>
Common Utilities.
 Some of the functions are port from JavaScript.
<P>

<P>
<DL>
<DT><B>Author:</B></DT>
  <DD>Chan Wai Shing <cws1989@gmail.com></DD>
</DL>
<HR>

<P>

<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected </CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#Util()">Util</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" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.Boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#getVariableValueAsBoolean(java.lang.Object)">getVariableValueAsBoolean</A></B>(java.lang.Object&nbsp;var)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Treat a variable as an boolean in JavaScript style.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.Integer</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#getVariableValueAsInteger(java.lang.Object)">getVariableValueAsInteger</A></B>(java.lang.Object&nbsp;var)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Treat a variable as an integer in JavaScript style.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#join(java.util.List)">join</A></B>(java.util.List&lt;java.lang.String&gt;&nbsp;strings)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the <code>strings</code> into one string.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#join(java.util.List, java.lang.String)">join</A></B>(java.util.List&lt;java.lang.String&gt;&nbsp;strings,
     java.lang.String&nbsp;delimiter)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the <code>strings</code> into one string with <code>delimiter</code> in 
 between.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#join(java.lang.String[])">join</A></B>(java.lang.String[]&nbsp;strings)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the <code>strings</code> into one string.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#join(java.lang.String[], java.lang.String)">join</A></B>(java.lang.String[]&nbsp;strings,
     java.lang.String&nbsp;delimiter)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Join the <code>strings</code> into one string with <code>delimiter</code> in 
 between.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#match(java.util.regex.Pattern, java.lang.String, boolean)">match</A></B>(java.util.regex.Pattern&nbsp;pattern,
      java.lang.String&nbsp;string,
      boolean&nbsp;isGlobal)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get all the matches for <code>string</code> compiled by <code>pattern</code>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.util.List&lt;java.lang.Object&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#removeDuplicates(java.util.List, java.lang.String)">removeDuplicates</A></B>(java.util.List&lt;java.lang.Object&gt;&nbsp;decorations,
                 java.lang.String&nbsp;source)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Remove identical adjacent tags from <code>decorations</code>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../prettify/parser/Util.html#test(java.util.regex.Pattern, java.lang.String)">test</A></B>(java.util.regex.Pattern&nbsp;pattern,
     java.lang.String&nbsp;string)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Test whether the <code>string</code> has at least one match by 
 <code>pattern</code>.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="Util()"><!-- --></A><H3>
Util</H3>
<PRE>
protected <B>Util</B>()</PRE>
<DL>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>

<A NAME="getVariableValueAsBoolean(java.lang.Object)"><!-- --></A><H3>
getVariableValueAsBoolean</H3>
<PRE>
public static java.lang.Boolean <B>getVariableValueAsBoolean</B>(java.lang.Object&nbsp;var)</PRE>
<DL>
<DD>Treat a variable as an boolean in JavaScript style. Note this function can
 only handle string, integer and boolean currently. All other data type, if
 null, return false, not null return true.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>var</CODE> - the variable to get value from
<DT><B>Returns:</B><DD>the boolean value</DL>
</DD>
</DL>
<HR>

<A NAME="getVariableValueAsInteger(java.lang.Object)"><!-- --></A><H3>
getVariableValueAsInteger</H3>
<PRE>
public static java.lang.Integer <B>getVariableValueAsInteger</B>(java.lang.Object&nbsp;var)</PRE>
<DL>
<DD>Treat a variable as an integer in JavaScript style. Note this function can
 only handle integer and boolean currently.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>var</CODE> - the variable to get value from
<DT><B>Returns:</B><DD>the integer value
<DT><B>Throws:</B>
<DD><CODE>java.lang.IllegalArgumentException</CODE> - the data type of <code>var</code> is neither
 integer nor boolean.</DL>
</DD>
</DL>
<HR>

<A NAME="match(java.util.regex.Pattern, java.lang.String, boolean)"><!-- --></A><H3>
match</H3>
<PRE>
public static java.lang.String[] <B>match</B>(java.util.regex.Pattern&nbsp;pattern,
                                       java.lang.String&nbsp;string,
                                       boolean&nbsp;isGlobal)</PRE>
<DL>
<DD>Get all the matches for <code>string</code> compiled by <code>pattern</code>. If 
 <code>isGlobal</code> is true, the return results will only include the 
 group 0 matches. It is similar to string.match(regexp) in JavaScript.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>pattern</CODE> - the regexp<DD><CODE>string</CODE> - the string<DD><CODE>isGlobal</CODE> - similar to JavaScript /g flag
<DT><B>Returns:</B><DD>all matches</DL>
</DD>
</DL>
<HR>

<A NAME="test(java.util.regex.Pattern, java.lang.String)"><!-- --></A><H3>
test</H3>
<PRE>
public static boolean <B>test</B>(java.util.regex.Pattern&nbsp;pattern,
                           java.lang.String&nbsp;string)</PRE>
<DL>
<DD>Test whether the <code>string</code> has at least one match by 
 <code>pattern</code>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>pattern</CODE> - the regexp<DD><CODE>string</CODE> - the string to test
<DT><B>Returns:</B><DD>true if at least one match, false if no match</DL>
</DD>
</DL>
<HR>

<A NAME="join(java.util.List)"><!-- --></A><H3>
join</H3>
<PRE>
public static java.lang.String <B>join</B>(java.util.List&lt;java.lang.String&gt;&nbsp;strings)</PRE>
<DL>
<DD>Join the <code>strings</code> into one string.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>strings</CODE> - the string list to join
<DT><B>Returns:</B><DD>the joined string</DL>
</DD>
</DL>
<HR>

<A NAME="join(java.util.List, java.lang.String)"><!-- --></A><H3>
join</H3>
<PRE>
public static java.lang.String <B>join</B>(java.util.List&lt;java.lang.String&gt;&nbsp;strings,
                                    java.lang.String&nbsp;delimiter)</PRE>
<DL>
<DD>Join the <code>strings</code> into one string with <code>delimiter</code> in 
 between.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>strings</CODE> - the string list to join<DD><CODE>delimiter</CODE> - the delimiter
<DT><B>Returns:</B><DD>the joined string</DL>
</DD>
</DL>
<HR>

<A NAME="join(java.lang.String[])"><!-- --></A><H3>
join</H3>
<PRE>
public static java.lang.String <B>join</B>(java.lang.String[]&nbsp;strings)</PRE>
<DL>
<DD>Join the <code>strings</code> into one string.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>strings</CODE> - the string list to join
<DT><B>Returns:</B><DD>the joined string</DL>
</DD>
</DL>
<HR>

<A NAME="join(java.lang.String[], java.lang.String)"><!-- --></A><H3>
join</H3>
<PRE>
public static java.lang.String <B>join</B>(java.lang.String[]&nbsp;strings,
                                    java.lang.String&nbsp;delimiter)</PRE>
<DL>
<DD>Join the <code>strings</code> into one string with <code>delimiter</code> in 
 between. It is similar to RegExpObject.test(string) in JavaScript.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>strings</CODE> - the string list to join<DD><CODE>delimiter</CODE> - the delimiter
<DT><B>Returns:</B><DD>the joined string</DL>
</DD>
</DL>
<HR>

<A NAME="removeDuplicates(java.util.List, java.lang.String)"><!-- --></A><H3>
removeDuplicates</H3>
<PRE>
public static java.util.List&lt;java.lang.Object&gt; <B>removeDuplicates</B>(java.util.List&lt;java.lang.Object&gt;&nbsp;decorations,
                                                                java.lang.String&nbsp;source)</PRE>
<DL>
<DD>Remove identical adjacent tags from <code>decorations</code>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>decorations</CODE> - see <A HREF="../../prettify/parser/Job.html#decorations"><CODE>Job.decorations</CODE></A><DD><CODE>source</CODE> - the source code
<DT><B>Returns:</B><DD>the <code>decorations</code> after treatment
<DT><B>Throws:</B>
<DD><CODE>java.lang.IllegalArgumentException</CODE> - the size of <code>decoration</code> is not
 a multiple of 2</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>


<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
  <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/Util.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-files/index-1.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="../../prettify/parser/Prettify.CreateSimpleLexer.html" title="class in prettify.parser"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../index.html?prettify/parser/Util.html" target="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Util.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
&nbsp;<SCRIPT type="text/javascript">
  <!--
  if(window==top) {
    document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
  }
  //-->
</SCRIPT>
<NOSCRIPT>
  <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>


</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&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;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->

<HR>

</BODY>
</HTML>
