summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGodefroid Chapelle <gotcha@bubblenet.be>2007-06-06 15:41:55 +0000
committerGodefroid Chapelle <gotcha@bubblenet.be>2007-06-06 15:41:55 +0000
commit09616d8f32774f813620182973ae0c1c816abd3c (patch)
tree0890adcb2382ac55c9d5f873447629b4e0400035
parentde325e0fd4e4358dd2abe12e909962e6169fc99a (diff)
downloadzope-tal-09616d8f32774f813620182973ae0c1c816abd3c.tar.gz
normalize is now interp level code
-rw-r--r--src/zope/tal/_talinterpreter/__init__.py (renamed from src/zope/tal/talinterpreter/__init__.py)4
-rw-r--r--src/zope/tal/_talinterpreter/applevel.py (renamed from src/zope/tal/talinterpreter/applevel.py)11
-rw-r--r--src/zope/tal/_talinterpreter/interplevel.py10
-rw-r--r--src/zope/tal/tests/test_talinterpreter.py2
4 files changed, 17 insertions, 10 deletions
diff --git a/src/zope/tal/talinterpreter/__init__.py b/src/zope/tal/_talinterpreter/__init__.py
index 1222489..53f5afb 100644
--- a/src/zope/tal/talinterpreter/__init__.py
+++ b/src/zope/tal/_talinterpreter/__init__.py
@@ -4,9 +4,11 @@ class Module(MixedModule):
"""interpreter module."""
interpleveldefs = {
+ 'normalize' : 'interplevel.normalize',
}
appleveldefs = {
'TALInterpreter' : 'applevel.TALInterpreter',
- 'normalize' : 'applevel.normalize',
}
+
+
diff --git a/src/zope/tal/talinterpreter/applevel.py b/src/zope/tal/_talinterpreter/applevel.py
index 3f585d8..ae6c1ae 100644
--- a/src/zope/tal/talinterpreter/applevel.py
+++ b/src/zope/tal/_talinterpreter/applevel.py
@@ -26,6 +26,7 @@ from zope.tal.taldefs import getProgramVersion, getProgramMode
from zope.tal.translationcontext import TranslationContext
from zope.tal.alttalgenerator import AltTALGenerator
+import _talinterpreter
# Avoid constructing this tuple over and over
I18nMessageTypes = (Message,)
@@ -46,12 +47,6 @@ BOOLEAN_HTML_ATTRS = frozenset([
_nulljoin = ''.join
_spacejoin = ' '.join
-def normalize(text):
- # Now we need to normalize the whitespace in implicit message ids and
- # implicit $name substitution values by stripping leading and trailing
- # whitespace, and folding all internal whitespace to a single space.
- return _spacejoin(text.split())
-
class MacroStackItem(object):
@@ -610,7 +605,7 @@ class TALInterpreter(object):
if self.html and self._currentTag == "pre":
value = tmpstream.getvalue()
else:
- value = normalize(tmpstream.getvalue())
+ value = _talinterpreter.normalize(tmpstream.getvalue())
finally:
self.restoreState(state)
else:
@@ -673,7 +668,7 @@ class TALInterpreter(object):
if self.html and currentTag == "pre":
msgid = default
else:
- msgid = normalize(default)
+ msgid = _talinterpreter.normalize(default)
self.i18nStack.pop()
# See if there is was an i18n:data for msgid
if len(stuff) > 2:
diff --git a/src/zope/tal/_talinterpreter/interplevel.py b/src/zope/tal/_talinterpreter/interplevel.py
new file mode 100644
index 0000000..e942d9a
--- /dev/null
+++ b/src/zope/tal/_talinterpreter/interplevel.py
@@ -0,0 +1,10 @@
+from pypy.interpreter.baseobjspace import ObjSpace
+
+def normalize(space, text):
+ # Now we need to normalize the whitespace in implicit message ids and
+ # implicit $name substitution values by stripping leading and trailing
+ # whitespace, and folding all internal whitespace to a single space.
+ result = ' '.join(text.split())
+ return space.wrap(result)
+normalize.unwrap_spec = [ObjSpace, str]
+
diff --git a/src/zope/tal/tests/test_talinterpreter.py b/src/zope/tal/tests/test_talinterpreter.py
index 989c942..d12b72e 100644
--- a/src/zope/tal/tests/test_talinterpreter.py
+++ b/src/zope/tal/tests/test_talinterpreter.py
@@ -29,7 +29,7 @@ from zope.tal.talparser import TALParser
#from zope.tal.talinterpreter import TALInterpreter
from pypy.interpreter.mixedmodule import testmodule
-talinterpreter = testmodule('talinterpreter', 'zope.tal')
+talinterpreter = testmodule('_talinterpreter', 'zope.tal')
TALInterpreter = talinterpreter.TALInterpreter
from zope.tal.talgenerator import TALGenerator