Coverage Report - org.webmacro.parser.Token
 
Classes in this File Line Coverage Branch Coverage Complexity
Token
58%
7/12
100%
1/1
1
 
 1  
 /* Generated By:JavaCC: Do not edit this line. Token.java Version 4.1 */
 2  
 /* JavaCCOptions:TOKEN_EXTENDS=,KEEP_LINE_COL=null */
 3  
 package org.webmacro.parser;
 4  
 
 5  
 /**
 6  
  * Describes the input token stream.
 7  
  */
 8  
 
 9  
 public class Token {
 10  
 
 11  
   /**
 12  
    * An integer that describes the kind of this token.  This numbering
 13  
    * system is determined by JavaCCParser, and a table of these numbers is
 14  
    * stored in the file ...Constants.java.
 15  
    */
 16  
   public int kind;
 17  
 
 18  
   /** The line number of the first character of this Token. */
 19  
   public int beginLine;
 20  
   /** The column number of the first character of this Token. */
 21  
   public int beginColumn;
 22  
   /** The line number of the last character of this Token. */
 23  
   public int endLine;
 24  
   /** The column number of the last character of this Token. */
 25  
   public int endColumn;
 26  
 
 27  
   /**
 28  
    * The string image of the token.
 29  
    */
 30  
   public String image;
 31  
 
 32  
   /**
 33  
    * A reference to the next regular (non-special) token from the input
 34  
    * stream.  If this is the last token from the input stream, or if the
 35  
    * token manager has not read tokens beyond this one, this field is
 36  
    * set to null.  This is true only if this token is also a regular
 37  
    * token.  Otherwise, see below for a description of the contents of
 38  
    * this field.
 39  
    */
 40  
   public Token next;
 41  
 
 42  
   /**
 43  
    * This field is used to access special tokens that occur prior to this
 44  
    * token, but after the immediately preceding regular (non-special) token.
 45  
    * If there are no such special tokens, this field is set to null.
 46  
    * When there are more than one such special token, this field refers
 47  
    * to the last of these special tokens, which in turn refers to the next
 48  
    * previous special token through its specialToken field, and so on
 49  
    * until the first special token (whose specialToken field is null).
 50  
    * The next fields of special tokens refer to other special tokens that
 51  
    * immediately follow it (without an intervening regular token).  If there
 52  
    * is no such token, this field is null.
 53  
    */
 54  
   public Token specialToken;
 55  
 
 56  
   /**
 57  
    * An optional attribute value of the Token.
 58  
    * Tokens which are not used as syntactic sugar will often contain
 59  
    * meaningful values that will be used later on by the compiler or
 60  
    * interpreter. This attribute value is often different from the image.
 61  
    * Any subclass of Token that actually wants to return a non-null value can
 62  
    * override this method as appropriate.
 63  
    */
 64  
   public Object getValue() {
 65  0
     return null;
 66  
   }
 67  
 
 68  
   /**
 69  
    * No-argument constructor
 70  
    */
 71  28628
   public Token() {}
 72  
 
 73  
   /**
 74  
    * Constructs a new token for the specified Image.
 75  
    */
 76  
   public Token(int kind)
 77  
   {
 78  0
      this(kind, null);
 79  0
   }
 80  
 
 81  
   /**
 82  
    * Constructs a new token for the specified Image and Kind.
 83  
    */
 84  
   public Token(int kind, String image)
 85  79456
   {
 86  79456
      this.kind = kind;
 87  79456
      this.image = image;
 88  79456
   }
 89  
 
 90  
   /**
 91  
    * Returns the image.
 92  
    */
 93  
   public String toString()
 94  
   {
 95  0
      return image;
 96  
   }
 97  
 
 98  
   /**
 99  
    * Returns a new Token object, by default. However, if you want, you
 100  
    * can create and return subclass objects based on the value of ofKind.
 101  
    * Simply add the cases to the switch for all those special cases.
 102  
    * For example, if you have a subclass of Token called IDToken that
 103  
    * you want to create if ofKind is ID, simply add something like :
 104  
    *
 105  
    *    case MyParserConstants.ID : return new IDToken(ofKind, image);
 106  
    *
 107  
    * to the following switch statement. Then you can cast matchedToken
 108  
    * variable to the appropriate type and use sit in your lexical actions.
 109  
    */
 110  
   public static Token newToken(int ofKind, String image)
 111  
   {
 112  79456
      switch(ofKind)
 113  
      {
 114  79456
        default : return new Token(ofKind, image);
 115  
      }
 116  
   }
 117  
 
 118  
   public static Token newToken(int ofKind)
 119  
   {
 120  0
      return newToken(ofKind, null);
 121  
   }
 122  
 
 123  
 }
 124  
 /* JavaCC - OriginalChecksum=4c0a5442e139dec7d7b83a0c3aaebda2 (do not edit this line) */