test_class.declarator: tokenStream
test_class.modifier: private
test_class.original_string: private TokenStream tokenStream;
test_class.type: TokenStream
test_class.var_name: tokenStream
test_class.file: watertemplate-engine/src/test/java/org/watertemplate/interpreter/parser/TokenStreamTest.java
test_class.identifier: TokenStreamTest
test_case.body: @Test
      public void currentAndShift() {
          assertCurrentIsOfType(IF);
          tokenStream.shift();
          assertCurrentIsOfType(PROPERTY_KEY);
          tokenStream.shift();
          assertCurrentIsOfType(ELSE);
      }
test_case.class_method_signature: TokenStreamTest.currentAndShift()
test_case.full_signature: @Test public void currentAndShift()
test_case.identifier: currentAndShift
test_case.invocations: assertCurrentIsOfType shift assertCurrentIsOfType shift assertCurrentIsOfType
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void currentAndShift()
focal_class.declarator: tokens
focal_class.modifier: private final
focal_class.original_string: private final List<Token> tokens;
focal_class.type: List<Token>
focal_class.var_name: tokens
focal_class.declarator: currentTokenPosition
focal_class.modifier: private
focal_class.original_string: private int currentTokenPosition;
focal_class.type: int
focal_class.var_name: currentTokenPosition
focal_class.file: watertemplate-engine/src/main/java/org/watertemplate/interpreter/parser/TokenStream.java
focal_class.identifier: TokenStream
focal_class.class_method_signature: TokenStream.TokenStream(final Token... tokens)
focal_class.full_signature:   TokenStream(final Token... tokens)
focal_class.identifier: TokenStream
focal_class.parameters: (final Token... tokens)
focal_class.signature:  TokenStream(final Token... tokens)
focal_class.class_method_signature: TokenStream.TokenStream(final List<Token> tokens)
focal_class.full_signature:   TokenStream(final List<Token> tokens)
focal_class.identifier: TokenStream
focal_class.parameters: (final List<Token> tokens)
focal_class.signature:  TokenStream(final List<Token> tokens)
focal_class.class_method_signature: TokenStream.hasAny()
focal_class.full_signature:  boolean hasAny()
focal_class.identifier: hasAny
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasAny()
focal_class.class_method_signature: TokenStream.current()
focal_class.full_signature: public Token current()
focal_class.identifier: current
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Token
focal_class.signature: Token current()
focal_class.class_method_signature: TokenStream.reset(int save)
focal_class.full_signature: public void reset(int save)
focal_class.identifier: reset
focal_class.modifiers: public
focal_class.parameters: (int save)
focal_class.return: void
focal_class.signature: void reset(int save)
focal_class.class_method_signature: TokenStream.shift()
focal_class.full_signature: public void shift()
focal_class.identifier: shift
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void shift()
focal_class.class_method_signature: TokenStream.remaining()
focal_class.full_signature: public int remaining()
focal_class.identifier: remaining
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int remaining()
focal_class.class_method_signature: TokenStream.getCurrentTokenPosition()
focal_class.full_signature: public int getCurrentTokenPosition()
focal_class.identifier: getCurrentTokenPosition
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getCurrentTokenPosition()
focal_method.body: public void shift() {
          currentTokenPosition++;
      }
focal_method.class_method_signature: TokenStream.shift()
focal_method.full_signature: public void shift()
focal_method.identifier: shift
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: void
focal_method.signature: void shift()