[pypy-svn] r34676 - pypy/dist/pypy/translator/js/demo/jsdemo
pedronis at codespeak.net
pedronis at codespeak.net
Thu Nov 16 16:34:20 CET 2006
Author: pedronis
Date: Thu Nov 16 16:34:16 2006
New Revision: 34676
Added:
pypy/dist/pypy/translator/js/demo/jsdemo/support.py (contents, props changed)
Modified:
pypy/dist/pypy/translator/js/demo/jsdemo/example.py
pypy/dist/pypy/translator/js/demo/jsdemo/pythonconsole.py
Log:
use the js_source style (moved the helper to the support file) for both basic demos.
Modified: pypy/dist/pypy/translator/js/demo/jsdemo/example.py
==============================================================================
--- pypy/dist/pypy/translator/js/demo/jsdemo/example.py (original)
+++ pypy/dist/pypy/translator/js/demo/jsdemo/example.py Thu Nov 16 16:34:16 2006
@@ -4,7 +4,8 @@
import autopath
-from pypy.translator.js.test.runtest import compile_function
+from pypy.translator.js.demo.jsdemo import support
+
from pypy.translator.js.modules.dom import setTimeout, get_document
from pypy.rpython.ootypesystem.bltregistry import MethodDesc, BasicExternal
from pypy.translator.js import commproxy
@@ -81,10 +82,8 @@
if self.server.source:
source = self.server.source
else:
- fn = compile_function(runjs, [])
- source = fn.source()
+ source = support.js_source([runjs])
self.server.source = source
-
self.serve_data("text/javascript", source)
def serve_data(self, content_type, data):
Modified: pypy/dist/pypy/translator/js/demo/jsdemo/pythonconsole.py
==============================================================================
--- pypy/dist/pypy/translator/js/demo/jsdemo/pythonconsole.py (original)
+++ pypy/dist/pypy/translator/js/demo/jsdemo/pythonconsole.py Thu Nov 16 16:34:16 2006
@@ -10,36 +10,20 @@
import autopath
-import new, sys, os, cStringIO
+import sys, os, cStringIO
from cgi import parse_qs
from pypy.translator.js.modules.dom import setTimeout, get_document
-from pypy.translator.js.main import rpython2javascript
from pypy.rpython.ootypesystem.bltregistry import MethodDesc, BasicExternal
from pypy.translator.js import commproxy
from pypy.translator.js.modules.mochikit import escapeHTML
+from pypy.translator.js.demo.jsdemo import support
+
commproxy.USE_MOCHIKIT = True
from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
#from SimpleHTTPServer import SimpleHTTPRequestHandler
-def js_source(functions):
- mod = new.module('_js_src')
- function_names = []
- for func in functions:
- name = func.__name__
- if hasattr(mod, name):
- raise ValueError("exported function name %r is duplicated"
- % (name,))
- mod.__dict__[name] = func
- function_names.append(name)
- sys.modules['_js_src'] = mod
- try:
- return rpython2javascript(mod, function_names)
- finally:
- del sys.modules['_js_src']
-
-# ____________________________________________________________
HTML_PAGE = """
<html>
@@ -181,7 +165,7 @@
if self.server.source:
source = self.server.source
else:
- source = js_source([setup_page])
+ source = support.js_source([setup_page])
self.server.source = source
self.serve_data("text/javascript", source)
Added: pypy/dist/pypy/translator/js/demo/jsdemo/support.py
==============================================================================
--- (empty file)
+++ pypy/dist/pypy/translator/js/demo/jsdemo/support.py Thu Nov 16 16:34:16 2006
@@ -0,0 +1,20 @@
+
+import sys, new
+from pypy.translator.js.main import rpython2javascript
+
+def js_source(functions):
+ mod = new.module('_js_src')
+ function_names = []
+ for func in functions:
+ name = func.__name__
+ if hasattr(mod, name):
+ raise ValueError("exported function name %r is duplicated"
+ % (name,))
+ mod.__dict__[name] = func
+ function_names.append(name)
+ sys.modules['_js_src'] = mod
+ try:
+ return rpython2javascript(mod, function_names)
+ finally:
+ del sys.modules['_js_src']
+
More information about the Pypy-commit
mailing list