parameterToPred :: Traversal' QExpr QParameter -> QParameter -> State RuleState ParameterPred
parameterToPred path (Param x Nothing Nothing _) =
    case classifyVar x of
        Variable -> return pParam'
        (BoundVariable name) -> do
            bindVariable name (path.param_nameL)
            return pParam'
        Normal -> return $ pParam (pIdent x)

--------------------------------------------------------------------------------
parameterToPred :: Traversal' QExpr QParameter -> QParameter -> State RuleState ParameterPred
parameterToPred path (Param x Nothing Nothing _) =
    case classifyVar x of
        Variable -> return pParam'
        (BoundVariable name) -> do
            bindVariable name (path.param_nameL)
            return pParam'
        Normal -> return $ pParam (pIdent x)

--------------------------------------------------------------------------------
parameterToPred path (Param x Nothing Nothing _) =
    case classifyVar x of
        Variable -> return pParam'
        (BoundVariable name) -> do
            bindVariable name (path.param_nameL)
            return pParam'
        Normal -> return $ pParam (pIdent x)

--------------------------------------------------------------------------------