org.joni
Class Compiler

java.lang.Object
  extended by org.joni.Compiler
All Implemented Interfaces:
org.jcodings.exception.ErrorMessages
Direct Known Subclasses:
ArrayCompiler, AsmCompilerSupport

abstract class Compiler
extends Object
implements ErrorMessages


Field Summary
protected  Analyser analyser
           
protected  org.jcodings.Encoding enc
           
protected  Regex regex
           
 
Fields inherited from interface org.joni.exception.ErrorMessages
ERR_CHAR_CLASS_VALUE_AT_END_OF_RANGE, ERR_CHAR_CLASS_VALUE_AT_START_OF_RANGE, ERR_CONTROL_CODE_SYNTAX, ERR_DEFAULT_ENCODING_IS_NOT_SETTED, ERR_EMPTY_CHAR_CLASS, ERR_EMPTY_GROUP_NAME, ERR_EMPTY_RANGE_IN_CHAR_CLASS, ERR_END_PATTERN_AT_CONTROL, ERR_END_PATTERN_AT_ESCAPE, ERR_END_PATTERN_AT_LEFT_BRACE, ERR_END_PATTERN_AT_LEFT_BRACKET, ERR_END_PATTERN_AT_META, ERR_END_PATTERN_IN_GROUP, ERR_END_PATTERN_WITH_UNMATCHED_PARENTHESIS, ERR_GROUP_NUMBER_OVER_FOR_CAPTURE_HISTORY, ERR_INVALID_ARGUMENT, ERR_INVALID_BACKREF, ERR_INVALID_CHAR_IN_GROUP_NAME, ERR_INVALID_COMBINATION_OF_OPTIONS, ERR_INVALID_GROUP_NAME, ERR_INVALID_LOOK_BEHIND_PATTERN, ERR_INVALID_POSIX_BRACKET_TYPE, ERR_INVALID_REPEAT_RANGE_PATTERN, ERR_INVALID_WIDE_CHAR_VALUE, ERR_MATCH_STACK_LIMIT_OVER, ERR_MEMORY, ERR_META_CODE_SYNTAX, ERR_MISMATCH_CODE_LENGTH_IN_CLASS_RANGE, ERR_MULTIPLEX_DEFINED_NAME, ERR_MULTIPLEX_DEFINITION_NAME_CALL, ERR_NESTED_REPEAT_OPERATOR, ERR_NEVER_ENDING_RECURSION, ERR_NOT_SUPPORTED_ENCODING_COMBINATION, ERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED, ERR_OVER_THREAD_PASS_LIMIT_COUNT, ERR_PARSER_BUG, ERR_PREMATURE_END_OF_CHAR_CLASS, ERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR, ERR_STACK_BUG, ERR_TARGET_OF_REPEAT_OPERATOR_INVALID, ERR_TARGET_OF_REPEAT_OPERATOR_NOT_SPECIFIED, ERR_TOO_BIG_BACKREF_NUMBER, ERR_TOO_BIG_NUMBER, ERR_TOO_BIG_NUMBER_FOR_REPEAT_RANGE, ERR_TOO_BIG_SB_CHAR_VALUE, ERR_TOO_MANY_MULTI_BYTE_RANGES, ERR_TOO_SHORT_MULTI_BYTE_STRING, ERR_TYPE_BUG, ERR_UNDEFINED_BYTECODE, ERR_UNDEFINED_GROUP_OPTION, ERR_UNDEFINED_GROUP_REFERENCE, ERR_UNDEFINED_NAME_REFERENCE, ERR_UNEXPECTED_BYTECODE, ERR_UNMATCHED_CLOSE_PARENTHESIS, ERR_UNMATCHED_RANGE_SPECIFIER_IN_CHAR_CLASS, ERR_UPPER_SMALLER_THAN_LOWER_IN_REPEAT_RANGE, MISMATCH, NO_SUPPORT_CONFIG
 
Fields inherited from interface org.jcodings.exception.ErrorMessages
ERR_COULD_NOT_REPLICATE, ERR_ENCODING_ALIAS_ALREADY_REGISTERED, ERR_ENCODING_ALREADY_REGISTERED, ERR_ENCODING_CLASS_DEF_NOT_FOUND, ERR_ENCODING_LOAD_ERROR, ERR_ENCODING_REPLICA_ALREADY_REGISTERED, ERR_ILLEGAL_CHARACTER, ERR_INVALID_CHAR_PROPERTY_NAME, ERR_INVALID_CODE_POINT_VALUE, ERR_NO_SUCH_ENCODNG, ERR_TOO_BIG_WIDE_CHAR_VALUE, ERR_TOO_LONG_WIDE_CHAR_VALUE, ERR_TRANSCODER_ALREADY_REGISTERED, ERR_TRANSCODER_CLASS_DEF_NOT_FOUND, ERR_TRANSCODER_LOAD_ERROR
 
Constructor Summary
protected Compiler(Analyser analyser)
           
 
Method Summary
protected abstract  void addCompileString(byte[] bytes, int p, int mbLength, int strLength, boolean ignoreCase)
           
(package private)  void compile()
           
protected abstract  void compileAltNode(ConsAltNode node)
           
protected abstract  void compileAnchorNode(AnchorNode node)
           
protected abstract  void compileAnyCharNode()
           
protected abstract  void compileBackrefNode(BackRefNode node)
           
protected abstract  void compileCallNode(CallNode node)
           
protected abstract  void compileCClassNode(CClassNode node)
           
protected abstract  void compileCECQuantifierNode(QuantifierNode node)
           
protected abstract  void compileCTypeNode(CTypeNode node)
           
protected abstract  void compileEncloseNode(EncloseNode node)
           
protected abstract  void compileNonCECQuantifierNode(QuantifierNode node)
           
protected abstract  void compileOptionNode(EncloseNode node)
           
private  void compileStringNode(StringNode node)
           
private  void compileStringRawNode(StringNode sn)
           
protected  void compileTree(Node node)
           
protected  void compileTreeNTimes(Node node, int n)
           
protected abstract  void finish()
           
protected  void newInternalException(String message)
           
protected  void newSyntaxException(String message)
           
protected abstract  void prepare()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

analyser

protected final Analyser analyser

enc

protected final org.jcodings.Encoding enc

regex

protected final Regex regex
Constructor Detail

Compiler

protected Compiler(Analyser analyser)
Method Detail

compile

final void compile()

prepare

protected abstract void prepare()

finish

protected abstract void finish()

compileAltNode

protected abstract void compileAltNode(ConsAltNode node)

compileStringRawNode

private void compileStringRawNode(StringNode sn)

compileStringNode

private void compileStringNode(StringNode node)

addCompileString

protected abstract void addCompileString(byte[] bytes,
                                         int p,
                                         int mbLength,
                                         int strLength,
                                         boolean ignoreCase)

compileCClassNode

protected abstract void compileCClassNode(CClassNode node)

compileCTypeNode

protected abstract void compileCTypeNode(CTypeNode node)

compileAnyCharNode

protected abstract void compileAnyCharNode()

compileCallNode

protected abstract void compileCallNode(CallNode node)

compileBackrefNode

protected abstract void compileBackrefNode(BackRefNode node)

compileCECQuantifierNode

protected abstract void compileCECQuantifierNode(QuantifierNode node)

compileNonCECQuantifierNode

protected abstract void compileNonCECQuantifierNode(QuantifierNode node)

compileOptionNode

protected abstract void compileOptionNode(EncloseNode node)

compileEncloseNode

protected abstract void compileEncloseNode(EncloseNode node)

compileAnchorNode

protected abstract void compileAnchorNode(AnchorNode node)

compileTree

protected final void compileTree(Node node)

compileTreeNTimes

protected final void compileTreeNTimes(Node node,
                                       int n)

newSyntaxException

protected void newSyntaxException(String message)

newInternalException

protected void newInternalException(String message)


Copyright © 2013. All Rights Reserved.