Browse Source

Updating to Duktape 1.4 (master commit 5c863edb9d3186e8db2417dcd1ac9a2b508f3023)

Josh Engebretson 10 years ago
parent
commit
6b5fa21c19

+ 1 - 1
Source/AtomicJS/Javascript/JSPlugin.cpp

@@ -244,7 +244,7 @@ namespace Atomic
         gJSVMExports.duk_is_bound_function = duk_is_bound_function;
         gJSVMExports.duk_is_bound_function = duk_is_bound_function;
         gJSVMExports.duk_is_thread = duk_is_thread;
         gJSVMExports.duk_is_thread = duk_is_thread;
 
 
-        gJSVMExports.duk_is_callable = duk_is_callable;
+        //gJSVMExports.duk_is_callable = duk_is_callable;
         gJSVMExports.duk_is_dynamic_buffer = duk_is_dynamic_buffer;
         gJSVMExports.duk_is_dynamic_buffer = duk_is_dynamic_buffer;
         gJSVMExports.duk_is_fixed_buffer = duk_is_fixed_buffer;
         gJSVMExports.duk_is_fixed_buffer = duk_is_fixed_buffer;
         //gJSVMExports.duk_is_primitive = duk_is_primitive;
         //gJSVMExports.duk_is_primitive = duk_is_primitive;

File diff suppressed because it is too large
+ 1979 - 2426
Source/ThirdParty/Duktape/duk_config.h


File diff suppressed because it is too large
+ 259 - 223
Source/ThirdParty/Duktape/duktape.c


+ 27 - 7
Source/ThirdParty/Duktape/duktape.h

@@ -5,7 +5,7 @@
  *  include guard.  Other parts of the header are Duktape
  *  include guard.  Other parts of the header are Duktape
  *  internal and related to platform/compiler/feature detection.
  *  internal and related to platform/compiler/feature detection.
  *
  *
- *  Git commit df5e369cbd20005700281f008e49ab09725677ef (v1.3.0-202-gdf5e369-dirty).
+ *  Git commit 5c863edb9d3186e8db2417dcd1ac9a2b508f3023 (v1.3.0-431-g5c863ed).
  *  Git branch master.
  *  Git branch master.
  *
  *
  *  See Duktape AUTHORS.rst and LICENSE.txt for copyright and
  *  See Duktape AUTHORS.rst and LICENSE.txt for copyright and
@@ -71,6 +71,7 @@
  *  * Legimet <[email protected]>
  *  * Legimet <[email protected]>
  *  * Karl Skomski <[email protected]>
  *  * Karl Skomski <[email protected]>
  *  * Bruce Pascoe <[email protected]>
  *  * Bruce Pascoe <[email protected]>
+ *  * Ren\u00e9 Hollander <[email protected]>
  *  
  *  
  *  Other contributions
  *  Other contributions
  *  ===================
  *  ===================
@@ -107,6 +108,7 @@
  *  * https://github.com/sstruchtrup
  *  * https://github.com/sstruchtrup
  *  * Michael Drake (https://github.com/tlsa)
  *  * Michael Drake (https://github.com/tlsa)
  *  * https://github.com/chris-y
  *  * https://github.com/chris-y
+ *  * Laurent Zubiaur (https://github.com/lzubiaur)
  *  
  *  
  *  If you are accidentally missing from this list, send me an e-mail
  *  If you are accidentally missing from this list, send me an e-mail
  *  (``[email protected]``) and I'll fix the omission.
  *  (``[email protected]``) and I'll fix the omission.
@@ -218,8 +220,8 @@ struct duk_number_list_entry {
  * which Duktape snapshot was used.  Not available in the Ecmascript
  * which Duktape snapshot was used.  Not available in the Ecmascript
  * environment.
  * environment.
  */
  */
-#define DUK_GIT_COMMIT                    "df5e369cbd20005700281f008e49ab09725677ef"
-#define DUK_GIT_DESCRIBE                  "v1.3.0-202-gdf5e369-dirty"
+#define DUK_GIT_COMMIT                    "5c863edb9d3186e8db2417dcd1ac9a2b508f3023"
+#define DUK_GIT_DESCRIBE                  "v1.3.0-431-g5c863ed"
 #define DUK_GIT_BRANCH                    "master"
 #define DUK_GIT_BRANCH                    "master"
 
 
 /* Duktape debug protocol version used by this build. */
 /* Duktape debug protocol version used by this build. */
@@ -242,6 +244,7 @@ struct duk_number_list_entry {
 #define DUK_API_ENTRY_STACK               64
 #define DUK_API_ENTRY_STACK               64
 
 
 /* Value types, used by e.g. duk_get_type() */
 /* Value types, used by e.g. duk_get_type() */
+#define DUK_TYPE_MIN                      0
 #define DUK_TYPE_NONE                     0    /* no value, e.g. invalid index */
 #define DUK_TYPE_NONE                     0    /* no value, e.g. invalid index */
 #define DUK_TYPE_UNDEFINED                1    /* Ecmascript undefined */
 #define DUK_TYPE_UNDEFINED                1    /* Ecmascript undefined */
 #define DUK_TYPE_NULL                     2    /* Ecmascript null */
 #define DUK_TYPE_NULL                     2    /* Ecmascript null */
@@ -252,6 +255,7 @@ struct duk_number_list_entry {
 #define DUK_TYPE_BUFFER                   7    /* fixed or dynamic, garbage collected byte buffer */
 #define DUK_TYPE_BUFFER                   7    /* fixed or dynamic, garbage collected byte buffer */
 #define DUK_TYPE_POINTER                  8    /* raw void pointer */
 #define DUK_TYPE_POINTER                  8    /* raw void pointer */
 #define DUK_TYPE_LIGHTFUNC                9    /* lightweight function pointer */
 #define DUK_TYPE_LIGHTFUNC                9    /* lightweight function pointer */
+#define DUK_TYPE_MAX                      9
 
 
 /* Value mask types, used by e.g. duk_get_type_mask() */
 /* Value mask types, used by e.g. duk_get_type_mask() */
 #define DUK_TYPE_MASK_NONE                (1 << DUK_TYPE_NONE)
 #define DUK_TYPE_MASK_NONE                (1 << DUK_TYPE_NONE)
@@ -554,7 +558,7 @@ DUK_EXTERNAL_DECL duk_idx_t duk_push_error_object_va_raw(duk_context *ctx, duk_e
 DUK_EXTERNAL_DECL void *duk_push_buffer_raw(duk_context *ctx, duk_size_t size, duk_small_uint_t flags);
 DUK_EXTERNAL_DECL void *duk_push_buffer_raw(duk_context *ctx, duk_size_t size, duk_small_uint_t flags);
 
 
 #define duk_push_buffer(ctx,size,dynamic) \
 #define duk_push_buffer(ctx,size,dynamic) \
-	duk_push_buffer_raw((ctx), (size), (dynamic) ? DUK_BUF_FLAG_DYNAMIC : 0);
+	duk_push_buffer_raw((ctx), (size), (dynamic) ? DUK_BUF_FLAG_DYNAMIC : 0)
 #define duk_push_fixed_buffer(ctx,size) \
 #define duk_push_fixed_buffer(ctx,size) \
 	duk_push_buffer_raw((ctx), (size), 0 /*flags*/)
 	duk_push_buffer_raw((ctx), (size), 0 /*flags*/)
 #define duk_push_dynamic_buffer(ctx,size) \
 #define duk_push_dynamic_buffer(ctx,size) \
@@ -621,7 +625,8 @@ DUK_EXTERNAL_DECL duk_bool_t duk_is_ecmascript_function(duk_context *ctx, duk_id
 DUK_EXTERNAL_DECL duk_bool_t duk_is_bound_function(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_bool_t duk_is_bound_function(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_bool_t duk_is_thread(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_bool_t duk_is_thread(duk_context *ctx, duk_idx_t index);
 
 
-DUK_EXTERNAL_DECL duk_bool_t duk_is_callable(duk_context *ctx, duk_idx_t index);
+#define duk_is_callable(ctx,index) \
+	duk_is_function((ctx), (index))
 DUK_EXTERNAL_DECL duk_bool_t duk_is_dynamic_buffer(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_bool_t duk_is_dynamic_buffer(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_bool_t duk_is_fixed_buffer(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_bool_t duk_is_fixed_buffer(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_bool_t duk_is_external_buffer(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_bool_t duk_is_external_buffer(duk_context *ctx, duk_idx_t index);
@@ -648,6 +653,18 @@ DUK_EXTERNAL_DECL duk_bool_t duk_is_external_buffer(duk_context *ctx, duk_idx_t
 DUK_EXTERNAL_DECL duk_errcode_t duk_get_error_code(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_errcode_t duk_get_error_code(duk_context *ctx, duk_idx_t index);
 #define duk_is_error(ctx,index) \
 #define duk_is_error(ctx,index) \
 	(duk_get_error_code((ctx), (index)) != 0)
 	(duk_get_error_code((ctx), (index)) != 0)
+#define duk_is_eval_error(ctx,index) \
+	(duk_get_error_code((ctx), (index)) == DUK_ERR_EVAL_ERROR)
+#define duk_is_range_error(ctx,index) \
+	(duk_get_error_code((ctx), (index)) == DUK_ERR_RANGE_ERROR)
+#define duk_is_reference_error(ctx,index) \
+	(duk_get_error_code((ctx), (index)) == DUK_ERR_REFERENCE_ERROR)
+#define duk_is_syntax_error(ctx,index) \
+	(duk_get_error_code((ctx), (index)) == DUK_ERR_SYNTAX_ERROR)
+#define duk_is_type_error(ctx,index) \
+	(duk_get_error_code((ctx), (index)) == DUK_ERR_TYPE_ERROR)
+#define duk_is_uri_error(ctx,index) \
+	(duk_get_error_code((ctx), (index)) == DUK_ERR_URI_ERROR)
 
 
 /*
 /*
  *  Get operations: no coercion, returns default value for invalid
  *  Get operations: no coercion, returns default value for invalid
@@ -692,6 +709,9 @@ DUK_EXTERNAL_DECL void *duk_require_buffer_data(duk_context *ctx, duk_idx_t inde
 DUK_EXTERNAL_DECL void *duk_require_pointer(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL void *duk_require_pointer(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_c_function duk_require_c_function(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_c_function duk_require_c_function(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_context *duk_require_context(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL duk_context *duk_require_context(duk_context *ctx, duk_idx_t index);
+DUK_EXTERNAL_DECL void duk_require_function(duk_context *ctx, duk_idx_t index);
+#define duk_require_callable(ctx,index) \
+	duk_require_function((ctx), (index))
 DUK_EXTERNAL_DECL void *duk_require_heapptr(duk_context *ctx, duk_idx_t index);
 DUK_EXTERNAL_DECL void *duk_require_heapptr(duk_context *ctx, duk_idx_t index);
 
 
 #define duk_require_object_coercible(ctx,index) \
 #define duk_require_object_coercible(ctx,index) \
@@ -1213,13 +1233,13 @@ DUK_EXTERNAL_DECL void duk_debugger_cooperate(duk_context *ctx);
 union duk_double_union {
 union duk_double_union {
 	double d;
 	double d;
 	float f[2];
 	float f[2];
-#ifdef DUK_USE_64BIT_OPS
+#if defined(DUK_USE_64BIT_OPS)
 	duk_uint64_t ull[1];
 	duk_uint64_t ull[1];
 #endif
 #endif
 	duk_uint32_t ui[2];
 	duk_uint32_t ui[2];
 	duk_uint16_t us[4];
 	duk_uint16_t us[4];
 	duk_uint8_t uc[8];
 	duk_uint8_t uc[8];
-#ifdef DUK_USE_PACKED_TVAL_POSSIBLE
+#if defined(DUK_USE_PACKED_TVAL)
 	void *vp[2];  /* used by packed duk_tval, assumes sizeof(void *) == 4 */
 	void *vp[2];  /* used by packed duk_tval, assumes sizeof(void *) == 4 */
 #endif
 #endif
 };
 };

Some files were not shown because too many files changed in this diff