Пример #1
0
def interactiveCompile(expr, env, filename, mode):
    modname = env['__name__']
    if data.isDoc(expr, rootops.setlang):
        newlang = language.tmpLanguage(language.eval(expr, env), modname)
        env['__currentlang__']  = newlang
        env[newlang.__impl__.name] = newlang
        return compile("None", "", "eval")

    if data.isDoc(expr, (rootops.defop, rootops.getops)):
        expr['lang'] = '__currentlang__'
        language.eval(expr, env)
        return compile("None", "", "eval")
    else:
        return logixcompiler.compile([expr], filename, mode, module=modname)
Пример #2
0
def interactiveCompile(expr, env, filename, mode):
    modname = env['__name__']
    if data.isDoc(expr, rootops.setlang):
        newlang = language.tmpLanguage(language.eval(expr, env), modname)
        env['__currentlang__'] = newlang
        env[newlang.__impl__.name] = newlang
        return compile("None", "", "eval")

    if data.isDoc(expr, (rootops.defop, rootops.getops)):
        expr['lang'] = '__currentlang__'
        language.eval(expr, env)
        return compile("None", "", "eval")
    else:
        return logixcompiler.compile([expr], filename, mode, module=modname)
Пример #3
0
def rule(syntaxlang, syntax, env=None):
    env = env or {}
    return language.eval(syntaxlang.__impl__.parse(syntax)[0], env)
Пример #4
0
def rule(syntaxlang, syntax, env=None):
    env = env or {}
    return language.eval(syntaxlang.__impl__.parse(syntax)[0], env)