[pypy-svn] r25477 - pypy/dist/pypy/objspace
auc at codespeak.net
auc at codespeak.net
Fri Apr 7 10:48:31 CEST 2006
Author: auc
Date: Fri Apr 7 10:48:30 2006
New Revision: 25477
Modified:
pypy/dist/pypy/objspace/logic.py
Log:
typeorder for intersection mm
Modified: pypy/dist/pypy/objspace/logic.py
==============================================================================
--- pypy/dist/pypy/objspace/logic.py (original)
+++ pypy/dist/pypy/objspace/logic.py Fri Apr 7 10:48:30 2006
@@ -17,7 +17,7 @@
# this collects all multimethods to be made part of the Space
all_mms = {}
W_Root = baseobjspace.W_Root
-
+Wrappable = baseobjspace.Wrappable
USE_COROUTINES = True
HAVE_GREENLETS = True
@@ -758,6 +758,7 @@
from pypy.objspace.constraint import domain
all_mms.update(domain.all_mms)
+W_FiniteDomain = domain.W_FiniteDomain
#-- THE SPACE ---------------------------------------
@@ -774,8 +775,8 @@
space = std.Space(*args, **kwds)
# multimethods hack
- #space.model.typeorder[W_Var] = [(baseobjspace.W_Root, None)]
- space.model.typeorder[W_Var] = [(W_Var, None), (baseobjspace.W_Root, None)]
+ space.model.typeorder[W_Var] = [(W_Var, None), (W_Root, None)] # None means no conversion
+ space.model.typeorder[W_FiniteDomain] = [(W_FiniteDomain, None), (W_Root, None)]
for name in all_mms.keys():
exprargs, expr, miniglobals, fallback = (
all_mms[name].install_not_sliced(space.model.typeorder, baked_perform_call=False))
@@ -809,12 +810,15 @@
space.wrap(app_alias_of))
space.setitem(space.builtin.w_dict, space.wrap('is_aliased'),
space.wrap(app_is_aliased))
- space.setitem(space.builtin.w_dict, space.wrap('FiniteDomain'),
- space.wrap(domain.app_make_fd))
space.setitem(space.builtin.w_dict, space.wrap('bind'),
space.wrap(app_bind))
space.setitem(space.builtin.w_dict, space.wrap('unify'),
space.wrap(app_unify))
+ #-- domain -----
+ space.setitem(space.builtin.w_dict, space.wrap('FiniteDomain'),
+ space.wrap(domain.app_make_fd))
+ space.setitem(space.builtin.w_dict, space.wrap('intersection'),
+ space.wrap(domain.app_intersection))
if USE_COROUTINES:
import os
def exitfunc():
More information about the Pypy-commit
mailing list