VelocityParser { public boolean isValidVelocityIdentifierChar(char c) { return Character.isLetterOrDigit(c) || c == '_' || c == '-'; }  int getKeyWord(char[] array, int currentIndex, StringBuffer velocityBlock, VelocityParserContext context); int getDirective(char[] array, int currentIndex, StringBuffer velocityBlock, VelocityParserContext context); int getVelocityIdentifier(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); boolean isValidVelocityIdentifierChar(char c); int getDirectiveName(char[] array, int currentIndex, StringBuffer directiveName, StringBuffer velocityBlock,
        VelocityParserContext context); int getDirectiveEndOfLine(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); int getSimpleComment(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); int getMultilinesComment(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); int getVar(char[] array, int currentIndex, StringBuffer velocityBlock, VelocityParserContext context); int getVar(char[] array, int currentIndex, StringBuffer varName, StringBuffer velocityBlock,
        VelocityParserContext context); int getMethodOrProperty(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); int getTableElement(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); int getMethodParameters(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); int getParameters(char[] array, int currentIndex, StringBuffer velocityBlock, char endingChar,
        VelocityParserContext context); int getEscape(char[] array, int currentIndex, StringBuffer velocityBlock, VelocityParserContext context); int getWhiteSpaces(char[] array, int currentIndex, StringBuffer velocityBlock, VelocityParserContext context); int getSpaces(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); int getMacroParametersSeparator(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); int getMacroParameter(char[] array, int currentIndex, StringBuffer velocityBlock,
        VelocityParserContext context); static final Set<String> VELOCITYDIRECTIVE_BEGIN; static final Set<String> VELOCITYDIRECTIVE_END; static final Set<String> VELOCITYDIRECTIVE_PARAM; static final Set<String> VELOCITYDIRECTIVE_NOPARAM; static final Set<String> VELOCITYDIRECTIVE_ALL; }
@Test void isValidVelocityIdentifierChar() { assertTrue(this.parser.isValidVelocityIdentifierChar('a')); assertTrue(this.parser.isValidVelocityIdentifierChar('_')); assertTrue(this.parser.isValidVelocityIdentifierChar('-')); assertFalse(this.parser.isValidVelocityIdentifierChar('.')); }