Exemple #1
0
 def parseStringToExpression(self, string):
     return ForaNative.parseStringToExpression(
         string, ForaNative.CodeDefinitionPoint(), "<eval>")
Exemple #2
0
 def parseTerms(self, expression):
     return StatementTerm.StatementTerm.parseToStatementTermList(
         expression, ForaNative.CodeDefinitionPoint(), "<eval>")
Exemple #3
0
                        self.dependencies_[node] = deps

                if not deps:
                    #we could go again
                    with self.lock_:
                        self.completable_.put(node)
                return


callAndReturnExpr = FORANative.parseStringToExpression(
    """object {
    ...(f, *args) {
        try { (f`(*args), (f, *args), 'callAndReturnExpr') }
        catch from stacktrace (e) {  throw from stacktrace (e, (f, *args)) }
        }
    }""", FORANative.CodeDefinitionPoint(), "cdp")

callAndReturn = FORANative.evaluateRootLevelCreateObjectExpression(
    callAndReturnExpr, {}, True)


def areAllArgumentsConst(*args):
    """Returns True if all ImplValContainer arguments in the specified list are const."""
    for arg in args:
        if not arg.isCST():
            return False
    return True


class LocalEvaluator(EvaluatorBase.EvaluatorBase):
    def __init__(self,