Class ScriptTokenParser

  • Direct Known Subclasses:
    ScriptCompiler

    abstract class ScriptTokenParser
    extends java.lang.Object
    An abstract class subclassed by ScriptCompiler taking care of the second phase of syntax checking. After all the tokens are created, these methods ensure that they are in the proper order in terms of expressions, primarily. Here we are going from an "infix" to a "postfix" set of tokens and then back to infix for final storage.
    • Field Detail

      • htUserFunctions

        protected java.util.Map<java.lang.String,​java.lang.Boolean> htUserFunctions
      • script

        protected java.lang.String script
      • isStateScript

        protected boolean isStateScript
      • lineCurrent

        protected short lineCurrent
      • iCommand

        protected int iCommand
      • ichCurrentCommand

        protected int ichCurrentCommand
      • ichComment

        protected int ichComment
      • ichEnd

        protected int ichEnd
      • ichToken

        protected int ichToken
      • theToken

        protected T theToken
      • lastFlowCommand

        protected T lastFlowCommand
      • tokenCommand

        protected T tokenCommand
      • lastToken

        protected T lastToken
      • tokenAndEquals

        protected T tokenAndEquals
      • theTok

        protected int theTok
      • nTokens

        protected int nTokens
      • tokCommand

        protected int tokCommand
      • ptNewSetModifier

        protected int ptNewSetModifier
      • isNewSet

        protected boolean isNewSet
      • haveMacro

        protected boolean haveMacro
      • logMessages

        protected boolean logMessages
      • atokenInfix

        protected T[] atokenInfix
      • itokenInfix

        protected int itokenInfix
      • isSetBrace

        protected boolean isSetBrace
      • isMathExpressionCommand

        protected boolean isMathExpressionCommand
      • isSetOrDefine

        protected boolean isSetOrDefine
      • ltokenPostfix

        private javajs.util.Lst<T> ltokenPostfix
      • isEmbeddedExpression

        protected boolean isEmbeddedExpression
      • isCommaAsOrAllowed

        protected boolean isCommaAsOrAllowed
      • theValue

        private java.lang.Object theValue
      • haveString

        boolean haveString
      • residueSpecCodeGenerated

        private boolean residueSpecCodeGenerated
      • errorMessage

        protected java.lang.String errorMessage
      • errorMessageUntranslated

        protected java.lang.String errorMessageUntranslated
      • errorLine

        protected java.lang.String errorLine
      • errorType

        protected java.lang.String errorType
      • ERROR_badArgumentCount

        protected static final int ERROR_badArgumentCount
        See Also:
        Constant Field Values
      • ERROR_commandExpected

        protected static final int ERROR_commandExpected
        See Also:
        Constant Field Values
      • ERROR_endOfCommandUnexpected

        protected static final int ERROR_endOfCommandUnexpected
        See Also:
        Constant Field Values
      • ERROR_invalidExpressionToken

        protected static final int ERROR_invalidExpressionToken
        See Also:
        Constant Field Values
      • ERROR_tokenUnexpected

        protected static final int ERROR_tokenUnexpected
        See Also:
        Constant Field Values
      • ERROR_unrecognizedParameter

        protected static final int ERROR_unrecognizedParameter
        See Also:
        Constant Field Values
      • ERROR_unrecognizedToken

        protected static final int ERROR_unrecognizedToken
        See Also:
        Constant Field Values
      • ERROR_coordinateExpected

        private static final int ERROR_coordinateExpected
        See Also:
        Constant Field Values
      • ERROR_endOfExpressionExpected

        private static final int ERROR_endOfExpressionExpected
        See Also:
        Constant Field Values
      • ERROR_identifierOrResidueSpecificationExpected

        private static final int ERROR_identifierOrResidueSpecificationExpected
        See Also:
        Constant Field Values
      • ERROR_invalidAtomSpecification

        private static final int ERROR_invalidAtomSpecification
        See Also:
        Constant Field Values
      • ERROR_invalidChainSpecification

        private static final int ERROR_invalidChainSpecification
        See Also:
        Constant Field Values
      • ERROR_invalidModelSpecification

        private static final int ERROR_invalidModelSpecification
        See Also:
        Constant Field Values
      • ERROR_numberOrVariableNameExpected

        private static final int ERROR_numberOrVariableNameExpected
        See Also:
        Constant Field Values
      • ERROR_residueSpecificationExpected

        private static final int ERROR_residueSpecificationExpected
        See Also:
        Constant Field Values
      • ERROR_unrecognizedExpressionToken

        private static final int ERROR_unrecognizedExpressionToken
        See Also:
        Constant Field Values
    • Constructor Detail

      • ScriptTokenParser

        ScriptTokenParser()
    • Method Detail

      • compileExpressions

        protected boolean compileExpressions()
      • compileExpression

        protected boolean compileExpression()
      • isUserFunction

        protected boolean isUserFunction​(java.lang.String name)
      • isExpressionNext

        private boolean isExpressionNext()
      • tokenAttr

        protected static boolean tokenAttr​(T token,
                                           int tok)
      • moreTokens

        private boolean moreTokens()
      • tokAt

        protected int tokAt​(int i)
      • tokPeek

        private int tokPeek()
      • tokPeekIs

        private boolean tokPeekIs​(int tok)
      • intPeek

        private int intPeek()
      • valuePeek

        private java.lang.Object valuePeek()
      • tokenNext

        private T tokenNext()
        increments the pointer; does NOT set theToken or theValue
        Returns:
        the next token
      • tokenNextTok

        private boolean tokenNextTok​(int tok)
      • returnToken

        private boolean returnToken()
      • getToken

        private T getToken()
        gets the next token and sets global theToken and theValue
        Returns:
        the next token
      • getNumericalToken

        private boolean getNumericalToken()
      • floatValue

        private float floatValue()
      • addTokenToPostfix

        private boolean addTokenToPostfix​(int tok,
                                          java.lang.Object value)
      • addTokenToPostfixInt

        private boolean addTokenToPostfixInt​(int tok,
                                             int intValue,
                                             java.lang.Object value)
      • addTokenToPostfixToken

        private boolean addTokenToPostfixToken​(T token)
      • addNextToken

        private boolean addNextToken()
      • addNextTokenIf

        private boolean addNextTokenIf​(int tok)
      • addSubstituteTokenIf

        private boolean addSubstituteTokenIf​(int tok,
                                             T token)
      • clauseOr

        private boolean clauseOr​(boolean allowCommaAsOr)
      • clauseAnd

        private boolean clauseAnd()
      • clauseNot

        private boolean clauseNot()
      • clausePrimitive

        private boolean clausePrimitive()
      • checkForCoordinate

        private boolean checkForCoordinate​(boolean isImplicitExpression)
      • checkForItemSelector

        private boolean checkForItemSelector​(boolean allowNumeric)
      • clauseWithin

        private boolean clauseWithin​(boolean isWithin)
      • clauseConnected

        private boolean clauseConnected​(boolean isPolyhedra)
      • clauseSubstructure

        private boolean clauseSubstructure()
      • clauseItemSelector

        private boolean clauseItemSelector()
      • clauseComparator

        private boolean clauseComparator​(boolean isOptional)
      • addCompare

        private boolean addCompare​(T tokenAtomProperty,
                                   T tokenComparator)
      • clauseCell

        private boolean clauseCell​(int tok)
      • clauseDefine

        private boolean clauseDefine​(boolean haveToken,
                                     boolean forceString)
      • generateResidueSpecCode

        private boolean generateResidueSpecCode​(T token)
      • clauseResidueSpec

        private boolean clauseResidueSpec()
      • clauseResNameSpec

        private boolean clauseResNameSpec()
        [a] or just a
        Returns:
        true if handled
      • clauseSequenceSpec

        private boolean clauseSequenceSpec()
      • getSequenceCode

        private T getSequenceCode​(boolean isSecond)
      • clauseChainSpec

        private boolean clauseChainSpec​(int tok)
        [:] [chars] [:] ["chars"] [:] [*] [:] [0-9] [:] [?] [:] (empty chain)
        Parameters:
        tok -
        Returns:
        true if chain handled
      • clauseAlternateSpec

        private boolean clauseAlternateSpec()
        check for %x or % (null alternate)
        Returns:
        true if no error
      • isTerminator

        private boolean isTerminator​(int tok)
        we allow : and % to have null values
        Parameters:
        tok -
        Returns:
        true if terminating
      • clauseModelSpec

        private boolean clauseModelSpec()
        process /1 /1.1 / * or just /
        Returns:
        true if no error
      • fixModelSpec

        private int fixModelSpec​(T token)
      • clauseAtomSpec

        private boolean clauseAtomSpec()
      • errorString

        static java.lang.String errorString​(int iError,
                                            java.lang.String value,
                                            java.lang.String more,
                                            boolean translated)
      • commandExpected

        protected boolean commandExpected()
      • error

        protected boolean error​(int error)
      • errorStr

        protected boolean errorStr​(int error,
                                   java.lang.String value)
      • errorIntStr2

        protected boolean errorIntStr2​(int iError,
                                       java.lang.String value,
                                       java.lang.String more)
      • isError

        private boolean isError()
      • errorStr2

        protected boolean errorStr2​(java.lang.String errorMessage,
                                    java.lang.String strUntranslated)