Author: Stephan <step...@stzal.com>
Branch: 
Changeset: r334:7c7a58b2bf0b
Date: 2013-01-08 17:21 +0100
http://bitbucket.org/pypy/lang-js/changeset/7c7a58b2bf0b/

Log:    re-organized builtins

diff --git a/js/astbuilder.py b/js/astbuilder.py
--- a/js/astbuilder.py
+++ b/js/astbuilder.py
@@ -218,8 +218,8 @@
         return operations.IntNumber(pos, int(node.additional_info, 8))
 
     def string(self, node):
-        from operations import string_unquote
-        from runistr import unicode_unescape, decode_str_utf8
+        from js.operations import string_unquote
+        from js.runistr import unicode_unescape, decode_str_utf8
 
         # TODO decode utf-8
         pos = self.get_pos(node)
@@ -717,7 +717,7 @@
 def parse_to_ast(code):
     #assert isinstance(code, unicode)
     from js.jsparser import parse
-    from runistr import encode_unicode_utf8
+    from js.runistr import encode_unicode_utf8
     src = encode_unicode_utf8(code)
     parse_tree = parse(src)
     ast = parse_tree_to_ast(parse_tree)
diff --git a/js/baseop.py b/js/baseop.py
--- a/js/baseop.py
+++ b/js/baseop.py
@@ -6,7 +6,7 @@
 
 from pypy.rlib.rarithmetic import ovfcheck
 from pypy.rlib.rfloat import isnan, isinf
-from js.builtins_number import w_NAN, w_POSITIVE_INFINITY, w_NEGATIVE_INFINITY
+from js.builtins.number import w_NAN, w_POSITIVE_INFINITY, w_NEGATIVE_INFINITY
 
 import math
 
diff --git a/js/builtins.py b/js/builtins/__init__.py
rename from js/builtins.py
rename to js/builtins/__init__.py
--- a/js/builtins.py
+++ b/js/builtins/__init__.py
@@ -48,10 +48,10 @@
     put_property(global_object, u'Function', w_Function)
 
     # 15.3.4 Properties of the Function Prototype Object
-    import js.builtins_function as function_builtins
     from js.functions import JsNativeFunction
 
-    empty_func = JsNativeFunction(function_builtins.empty, u'Empty')
+    import js.builtins.function
+    empty_func = JsNativeFunction(js.builtins.function.empty, u'Empty')
     w_FunctionPrototype = object_space.new_func(empty_func)
     object_space.assign_proto(w_FunctionPrototype, object_space.proto_object)
     object_space.proto_function = w_FunctionPrototype
@@ -75,13 +75,13 @@
     # 14.2.4.1 Object.prototype.constructor
     put_property(w_ObjectPrototype, u'constructor', w_Object)
 
-    import js.builtins_object as object_builtins
+    import js.builtins.object
     # 15.2.4.2 Object.prototype.toString()
-    put_native_function(w_ObjectPrototype, u'toString', 
object_builtins.to_string)
-    put_native_function(w_ObjectPrototype, u'toLocaleString', 
object_builtins.to_string)
+    put_native_function(w_ObjectPrototype, u'toString', 
js.builtins.object.to_string)
+    put_native_function(w_ObjectPrototype, u'toLocaleString', 
js.builtins.object.to_string)
 
     # 15.2.4.3 Object.prototype.valueOf()
-    put_native_function(w_ObjectPrototype, u'valueOf', 
object_builtins.value_of)
+    put_native_function(w_ObjectPrototype, u'valueOf', 
js.builtins.object.value_of)
 
     # 15.3 Function Objects
     # 15.3.3 Properties of the Function Constructor
@@ -95,38 +95,35 @@
     # 14.3.4.1 Function.prototype.constructor
     put_property(w_FunctionPrototype, u'constructor', w_Function)
 
-    import js.builtins_function as function_builtins
-
     # 15.3.4.2 Function.prototype.toString()
-    put_native_function(w_FunctionPrototype, u'toString', 
function_builtins.to_string)
+    put_native_function(w_FunctionPrototype, u'toString', 
js.builtins.function.to_string)
 
     # 15.3.4.3 Function.prototype.apply
-    put_intimate_function(w_FunctionPrototype, u'apply', 
function_builtins.js_apply)
+    put_intimate_function(w_FunctionPrototype, u'apply', 
js.builtins.function.js_apply)
 
     # 15.3.4.4 Function.prototype.call
-    put_intimate_function(w_FunctionPrototype, u'call', 
function_builtins.js_call)
+    put_intimate_function(w_FunctionPrototype, u'call', 
js.builtins.function.js_call)
 
-    import js.builtins_boolean
-    js.builtins_boolean.setup(global_object)
+    import js.builtins.boolean
+    js.builtins.boolean.setup(global_object)
 
-    import js.builtins_number
-    js.builtins_number.setup(global_object)
+    import js.builtins.number
+    js.builtins.number.setup(global_object)
 
-    import js.builtins_string
-    js.builtins_string.setup(global_object)
+    import js.builtins.string
+    js.builtins.string.setup(global_object)
 
-    import js.builtins_array
-    js.builtins_array.setup(global_object)
+    import js.builtins.array
+    js.builtins.array.setup(global_object)
 
-    #Math
-    import js.builtins_math
-    js.builtins_math.setup(global_object)
+    import js.builtins.js_math
+    js.builtins.js_math.setup(global_object)
 
-    import js.builtins_date
-    js.builtins_date.setup(global_object)
+    import js.builtins.date
+    js.builtins.date.setup(global_object)
 
-    import js.builtins_global
-    js.builtins_global.setup(global_object)
+    import js.builtins.js_global
+    js.builtins.js_global.setup(global_object)
 
 
 def get_arg(args, index, default=w_Undefined):
diff --git a/js/builtins_array.py b/js/builtins/array.py
rename from js/builtins_array.py
rename to js/builtins/array.py
diff --git a/js/builtins_boolean.py b/js/builtins/boolean.py
rename from js/builtins_boolean.py
rename to js/builtins/boolean.py
diff --git a/js/builtins_date.py b/js/builtins/date.py
rename from js/builtins_date.py
rename to js/builtins/date.py
diff --git a/js/builtins_function.py b/js/builtins/function.py
rename from js/builtins_function.py
rename to js/builtins/function.py
diff --git a/js/builtins_interpreter.py b/js/builtins/interpreter.py
rename from js/builtins_interpreter.py
rename to js/builtins/interpreter.py
diff --git a/js/builtins_global.py b/js/builtins/js_global.py
rename from js/builtins_global.py
rename to js/builtins/js_global.py
--- a/js/builtins_global.py
+++ b/js/builtins/js_global.py
@@ -8,8 +8,8 @@
 
 def setup(global_object):
     from js.builtins import put_intimate_function, put_native_function, 
put_property
-    from js.builtins_number import w_NAN
-    from js.builtins_number import w_POSITIVE_INFINITY
+    from js.builtins.number import w_NAN
+    from js.builtins.number import w_POSITIVE_INFINITY
     from js.jsobj import w_Undefined
     from pypy.rlib.objectmodel import we_are_translated
 
@@ -183,7 +183,7 @@
 # 15.1.2.3
 @w_return
 def parse_float(this, args):
-    from runistr import encode_unicode_utf8
+    from js.runistr import encode_unicode_utf8
     from js.constants import num_lit_rexp
 
     string = get_arg(args, 0)
@@ -222,7 +222,7 @@
         return
 
     from pypy.rlib.rstring import UnicodeBuilder
-    from runistr import encode_unicode_utf8
+    from js.runistr import encode_unicode_utf8
 
     builder = UnicodeBuilder()
     for arg in args[:-1]:
diff --git a/js/builtins_math.py b/js/builtins/js_math.py
rename from js/builtins_math.py
rename to js/builtins/js_math.py
diff --git a/js/builtins_number.py b/js/builtins/number.py
rename from js/builtins_number.py
rename to js/builtins/number.py
diff --git a/js/builtins_object.py b/js/builtins/object.py
rename from js/builtins_object.py
rename to js/builtins/object.py
diff --git a/js/builtins_string.py b/js/builtins/string.py
rename from js/builtins_string.py
rename to js/builtins/string.py
diff --git a/js/interpreter.py b/js/interpreter.py
--- a/js/interpreter.py
+++ b/js/interpreter.py
@@ -17,8 +17,7 @@
     def __init__(self, config={}):
         from js.jsobj import W_GlobalObject
         from js.object_space import object_space
-        import js.builtins
-        import js.builtins_interpreter
+        import js.builtins.interpreter
 
         self.config = InterpreterConfig(config)
         self.global_object = W_GlobalObject()
@@ -26,7 +25,7 @@
         object_space.interpreter = self
 
         js.builtins.setup_builtins(self.global_object)
-        js.builtins_interpreter.setup_builtins(self.global_object)
+        js.builtins.interpreter.setup_builtins(self.global_object)
 
         object_space.assign_proto(self.global_object)
 
@@ -40,7 +39,7 @@
 
     def run_src(self, src):
         from js.astbuilder import parse_to_ast
-        from runistr import decode_str_utf8
+        from js.runistr import decode_str_utf8
         ast = parse_to_ast(decode_str_utf8(src))
         return self.run_ast(ast)
 
diff --git a/js/jsobj.py b/js/jsobj.py
--- a/js/jsobj.py
+++ b/js/jsobj.py
@@ -1042,8 +1042,8 @@
             return True
 
     def ToNumber(self):
-        from js.builtins_global import _strip
-        from runistr import encode_unicode_utf8
+        from js.builtins.js_global import _strip
+        from js.runistr import encode_unicode_utf8
         from js.constants import hex_rexp, oct_rexp, num_rexp
 
         u_strval = self._strval_
@@ -1067,7 +1067,7 @@
 
             return float(num_lit)
 
-        from builtins_global import _parse_int
+        from js.builtins.js_global import _parse_int
 
         match_data = hex_rexp.match(s)
         if match_data is not None:
diff --git a/test/test_helpers.py b/test/test_helpers.py
--- a/test/test_helpers.py
+++ b/test/test_helpers.py
@@ -1,13 +1,12 @@
-import py
-
 def test_string_match_chars():
-    from js.builtins_global import _string_match_chars
+    from js.builtins.js_global import _string_match_chars
     assert _string_match_chars(u'abccab', u'abc') is True
     assert _string_match_chars(u'ABCcba', u'abc') is True
     assert _string_match_chars(u'2921', u'0123456789') is True
     assert _string_match_chars(u'abcdabcd', u'abc') is False
     assert _string_match_chars(u'29x21', u'0123456789') is False
 
+
 def test_unescape():
     from js import runistr
     assert runistr.unicode_unescape(u'\\u0041B\\u0043') == u'ABC'
diff --git a/test/test_w_string.py b/test/test_w_string.py
--- a/test/test_w_string.py
+++ b/test/test_w_string.py
@@ -11,7 +11,7 @@
 
 
 def test_isspace():
-    from js.builtins_global import _strip
+    from js.builtins.js_global import _strip
     assert _strip(u' ') == u''
     assert _strip(u'    ') == u''
     assert _strip(u'  \t\t\r\n  ') == u''
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to