Commit Graph

1950 Commits

Author SHA1 Message Date
Stephen Chung
3751b6d018 Build in array/blob concat functions. 2021-12-22 19:59:48 +08:00
Stephen Chung
422db4269e Allow multiple packages in def_package. 2021-12-22 12:41:55 +08:00
Stephen Chung
1c50efbac8 Unroll switch range case if range has only one number. 2021-12-22 10:48:19 +08:00
Stephen Chung
7ff50451cc Make comments multiline. 2021-12-21 22:16:03 +08:00
Stephen Chung
f9f3615878 Fix builds. 2021-12-21 16:36:53 +08:00
Stephen Chung
b85a9b3c1c Extract doc-comment on plugin functions. 2021-12-21 16:14:07 +08:00
Stephen Chung
f74486f904 Separate return type name and use references for serialization. 2021-12-21 13:21:29 +08:00
Stephen Chung
d7960dfe80 Short circuit no_function. 2021-12-21 13:03:39 +08:00
Stephen Chung
b4756b4575 Move CallableFunction to own file. 2021-12-20 22:13:00 +08:00
Stephen Chung
bca9fe53b0 New syntax for def_package. 2021-12-20 11:42:39 +08:00
Stephen Chung
5729f0cdd4 Add test for call_fn_raw. 2021-12-19 23:22:14 +08:00
Stephen Chung
123012404b Add Blob::write for strings. 2021-12-18 23:03:35 +08:00
Stephen Chung
e507dcfcb4 Fix no_index build. 2021-12-18 18:44:08 +08:00
Stephen Chung
541ef319bb Merge branch 'v1.3-fixes' 2021-12-18 18:22:20 +08:00
Stephen Chung
7eda6454a8 Bug fix. 2021-12-18 17:47:35 +08:00
Stephen Chung
9736171089 Fix bug in hex parsing for negative numbers. 2021-12-18 17:07:30 +08:00
Stephen Chung
0ae4d14a62 Move BLOB concat and push to builtin. 2021-12-18 15:37:20 +08:00
Stephen Chung
82d3375fc0 Fix Dynamic::from for BLOB. 2021-12-18 15:36:30 +08:00
Stephen Chung
9cf8360616 Move blob functions to builtin. 2021-12-18 14:58:02 +08:00
Stephen Chung
2b79a65454 Move range contains into builtin. 2021-12-18 14:50:37 +08:00
Stephen Chung
fc84600b22 Add NativeCallContext::call_fn 2021-12-18 12:29:04 +08:00
Stephen Chung
1c1247ac9a Tidy up code. 2021-12-18 12:28:56 +08:00
Stephen Chung
dc6896fbe2 Add OpAssignment::new_from_token. 2021-12-17 16:55:24 +08:00
Stephen Chung
8d67c70294 Fix builds. 2021-12-17 16:55:07 +08:00
Stephen Chung
29a9b3878d Fix builds. 2021-12-17 16:32:34 +08:00
Stephen Chung
42638db0fb Move Engine default limits. 2021-12-17 16:15:30 +08:00
Stephen Chung
c7ec27acc7 Split AST into separate files. 2021-12-17 16:07:13 +08:00
Stephen Chung
b1b2c62d7d Merge branch 'v1.3-fixes' 2021-12-16 22:40:25 +08:00
Stephen Chung
10fa6844c4 Fix custom syntax with method calls. 2021-12-16 22:40:10 +08:00
Stephen Chung
fbc2b1f13d Allow non-custom reserved symbols in custom syntax. 2021-12-16 18:01:49 +08:00
Stephen Chung
f92cbe1f6d Merge branch 'v1.3-fixes' 2021-12-16 16:10:39 +08:00
Stephen Chung
224aa0ea68 Allow custom syntax inside binary operator expressions. 2021-12-16 16:06:44 +08:00
Stephen Chung
2adb4ba4a8 Simplify deref_mut to &mut *. 2021-12-15 23:21:05 +08:00
Stephen Chung
abbfa3777d Add more range API's. 2021-12-15 22:12:51 +08:00
Stephen Chung
59a9ff0b0f Fix range precedences and add comparison operators. 2021-12-15 14:18:03 +08:00
Stephen Chung
eda80488d5 Fix builds. 2021-12-15 12:46:25 +08:00
Stephen Chung
7afec287d8 Fix doc test. 2021-12-15 12:26:05 +08:00
Stephen Chung
ef14079c61 Add ranges. 2021-12-15 12:06:17 +08:00
Stephen Chung
93e3c4c10a Compact BLOB display. 2021-12-13 09:40:43 +08:00
Stephen Chung
5eaf85254f Fix builds. 2021-12-12 17:26:15 +08:00
Stephen Chung
6af406bafc Add parse/write to blobs. 2021-12-12 16:29:54 +08:00
Stephen Chung
780c36e675 Simplify if let. 2021-12-12 12:33:22 +08:00
Stephen Chung
3a5495a65c Clarify custom operators. 2021-12-09 22:54:10 +08:00
Stephen Chung
675ddb89f9 Add "" and `` in string literals. 2021-12-09 13:34:51 +08:00
Stephen Chung
d9d44a9683 Add Engine::register_type_with_name_raw. 2021-12-09 12:49:12 +08:00
Stephen Chung
4421f33b2c Fix bug in blob's. 2021-12-07 19:03:04 +08:00
Stephen Chung
2a7a648429 Reduce feature gates. 2021-12-06 20:52:47 +08:00
Stephen Chung
5b64e0b383 Use deref for Expression. 2021-12-06 18:50:37 +08:00
Stephen Chung
cc98e82ea1 Include hashes in JSON output. 2021-12-06 11:12:54 +08:00
Stephen Chung
206b5051eb Clarify non-zero hashes. 2021-12-06 10:34:13 +08:00
Stephen Chung
54f78c5cd9 Use zero for no hash. 2021-12-05 17:05:19 +08:00
Stephen Chung
6f6380ca3a Fix builds. 2021-12-04 18:07:27 +08:00
Stephen Chung
b8c4054c20 Add strict variables mode. 2021-12-04 17:57:28 +08:00
Stephen Chung
fd26654125 Add allow_looping. 2021-12-03 11:24:38 +08:00
Stephen Chung
7cd76c6d18 Add language options. 2021-12-03 11:16:35 +08:00
Stephen Chung
9a5bd9396a Fix builds. 2021-12-02 17:46:39 +08:00
Stephen Chung
27c0181035 Fix build. 2021-12-02 16:01:37 +08:00
Stephen Chung
41dd989866 Support deserialization into byte arrays for BLOB's via serde_bytes. 2021-12-02 14:10:53 +08:00
Stephen Chung
70f4c53854 Trap out-of-bounds panic for BLOB's. 2021-12-02 13:09:59 +08:00
Stephen Chung
5363b0724f Support Option in from_dynamic. 2021-12-02 12:50:11 +08:00
Stephen Chung
5003d836d9 Do not construct function pointer for invalid function names. 2021-12-02 12:49:57 +08:00
Stephen Chung
d36e2d22d1 Minor refactor. 2021-12-02 12:49:46 +08:00
Stephen Chung
4b4b7a753b Add low-level warnings. 2021-11-29 13:12:47 +08:00
Stephen Chung
ba0a6c667e Add FnPtr::call_within_context. 2021-11-29 12:43:59 +08:00
Stephen Chung
0ab86ac623 Move AST::new() and AST::new_with_source() to internals. 2021-11-29 10:58:46 +08:00
Stephen Chung
c5f2b0a253 Fix builds. 2021-11-29 10:17:04 +08:00
Stephen Chung
95dc2ad502 Remove fields and parameters under no_function. 2021-11-29 09:43:35 +08:00
Stephen Chung
a3e79c0bd0 Fix builds. 2021-11-28 23:06:33 +08:00
Stephen Chung
9fa4d60336 Minor code and docs refactor. 2021-11-28 22:57:28 +08:00
Stephen Chung
dca47d5233 Remove volatile warnings for types and functions exposed unter internals. 2021-11-28 22:03:02 +08:00
Stephen Chung
c5317d7706 Deprecate NativeCallContext::new 2021-11-28 12:41:33 +08:00
Stephen Chung
d88e17d177 Move more &str to AsRef<str> 2021-11-28 12:41:20 +08:00
Stephen Chung
f49ff28b82 Fix test. 2021-11-28 10:49:48 +08:00
Stephen Chung
9c4ed44ab8 Fix builds. 2021-11-27 23:29:32 +08:00
Stephen Chung
4fc088a0f1 Fix feature builds. 2021-11-27 23:20:05 +08:00
Stephen Chung
e918e61e95 Use AsRef<str> for more flexible API. 2021-11-27 23:04:45 +08:00
Stephen Chung
30bfdd841a Add FnPtr::call. 2021-11-27 16:28:34 +08:00
Stephen Chung
d56585c877 Remove no_smartstring feature. 2021-11-27 14:24:36 +08:00
Stephen Chung
abe6b4a29b Use more const functions. 2021-11-27 14:24:06 +08:00
Stephen Chung
280b5b405e Make some new functions const. 2021-11-25 17:09:00 +08:00
Stephen Chung
fc472f641b Remove blob functions for filtering. 2021-11-23 23:01:14 +08:00
Stephen Chung
b7b42e658a Fix blob methods. 2021-11-23 22:52:10 +08:00
Stephen Chung
93b802effd Merge branch 'v1.2-fixes' 2021-11-23 22:46:16 +08:00
Stephen Chung
2b0b79870e Fix bug in array methods. 2021-11-23 22:37:18 +08:00
Stephen Chung
0c89a9c4c5 Change parameter name. 2021-11-23 18:10:01 +08:00
Stephen Chung
a757dfe89d Add blobs. 2021-11-23 14:58:54 +08:00
Stephen Chung
6ad7b344bf Add into_array and into_typed_array. 2021-11-23 12:45:59 +08:00
Stephen Chung
90200e607c Fix doc comment links. 2021-11-20 21:29:36 +08:00
Stephen Chung
fa41f4faf0 Move function back to correct file. 2021-11-20 15:43:55 +08:00
Stephen Chung
344b48ad36 Split APIs into files. 2021-11-20 14:57:21 +08:00
Stephen Chung
b7dc94fc1d Refactor. 2021-11-16 23:13:53 +08:00
Stephen Chung
e961ae23fd Eliminate script hashes under no_function. 2021-11-16 13:42:46 +08:00
Stephen Chung
b178d7c367 Fix no_function builds. 2021-11-16 13:42:22 +08:00
Stephen Chung
c2c30f7711 Use fold. 2021-11-16 13:15:43 +08:00
Stephen Chung
2fffe31b59 Level up exports. 2021-11-16 12:26:37 +08:00
Stephen Chung
98707912e0 Convert for loop to iterator. 2021-11-15 14:30:00 +08:00
Stephen Chung
de906053ed Deprecate call_fn_dynamic into call_fn_raw. 2021-11-15 11:13:00 +08:00
Stephen Chung
615c3acad6 Use actual outer scope for function-bang calls. 2021-11-14 22:48:57 +08:00
Stephen Chung
64b889fb95 Restructure code base. 2021-11-13 22:36:23 +08:00
Stephen Chung
38884ede46 Reducce panic messages. 2021-11-13 12:23:35 +08:00
Stephen Chung
c8aab47f50 Merge branch 'v1.1-fixes' 2021-11-13 10:01:55 +08:00
Stephen Chung
a227963f7a Fix unary parsing. 2021-11-13 09:50:49 +08:00
Stephen Chung
a9aa8e84fd Use Box<[]>. 2021-11-12 13:25:57 +08:00
Stephen Chung
bffc73435c Remove externals from ScriptFnDef. 2021-11-12 13:02:16 +08:00
Stephen Chung
7f34e4ad99 Merge branch 'v1.1-fixes' 2021-11-11 21:47:45 +08:00
Stephen Chung
774fd7514e Fix bang function calls under no_closure. 2021-11-11 21:47:35 +08:00
Stephen Chung
5e18ea34fe Fix doc test. 2021-11-11 21:43:45 +08:00
Stephen Chung
0fbc437916 Use Box<str> internally. 2021-11-11 13:55:52 +08:00
Stephen Chung
93869b544c Fix doc test. 2021-11-09 15:42:17 +08:00
Stephen Chung
f6dc440601 Add AST::iter_literal_variables. 2021-11-09 13:22:45 +08:00
Stephen Chung
e63cba9caf Merge branch 'v1.1-fixes' 2021-11-09 08:48:16 +08:00
Stephen Chung
5685ca8411 Fix floating-point display. 2021-11-09 08:46:02 +08:00
Stephen Chung
5083df3096 Propagate constants to functions for Engine::XXX_with_scope calls. 2021-11-08 22:16:28 +08:00
Stephen Chung
31ef7e6c69 Fix builds. 2021-11-08 12:07:49 +08:00
Stephen Chung
cc6a0571e7 Fix builds. 2021-11-08 11:35:46 +08:00
Stephen Chung
09e6b21729 Move mutable runtime global state to Imports. 2021-11-08 09:27:08 +08:00
Stephen Chung
71ad158b6a Fix builds. 2021-11-07 18:25:32 +08:00
Stephen Chung
68c0ee08c0 Reduce usage of Default::default() to make it easier to refactor. 2021-11-07 18:12:37 +08:00
Stephen Chung
61cc3d0bf2 Merge branch 'v1.1-fixes' 2021-11-05 23:26:00 +08:00
Stephen Chung
eeca8c90aa Make sure the global namespace is always searched first. 2021-11-05 23:22:05 +08:00
Stephen Chung
46e99df9cd Reverse regression on string + operator. 2021-11-05 20:34:27 +08:00
Stephen Chung
b2eb207ce4 Fix no_position builds. 2021-11-05 19:53:52 +08:00
Stephen Chung
affbb81d8a Add NativeCallContext::position. 2021-11-05 19:35:33 +08:00
Stephen Chung
231584824a Properly handle unary operators at beginning of statement. 2021-11-03 09:11:20 +08:00
Stephen Chung
7c6b444616 Fix display of 0.0. 2021-11-03 08:44:07 +08:00
Stephen Chung
ff9ac41da2 Merge branch 'v1.1-fixes' 2021-11-01 10:08:27 +08:00
Stephen Chung
c955c9200e Fix build. 2021-11-01 10:07:45 +08:00
Stephen Chung
2ea86c3987 Fix bug in assignment parsing. 2021-11-01 09:55:50 +08:00
Stephen Chung
b23bdb6d13 Remove unnecessary string builtins. 2021-11-01 09:42:22 +08:00
Stephen Chung
77dfc80fe9 Use iter().rev().enumerate(). 2021-11-01 09:31:48 +08:00
Stephen Chung
3d1b2d6f10 Fix no_function build. 2021-10-29 17:10:28 +08:00
Stephen Chung
dc2e824ce2 Fix no_module builds. 2021-10-29 17:01:29 +08:00
Stephen Chung
a5ae002cb7 Refine namespace display. 2021-10-27 23:30:25 +08:00
Stephen Chung
00659d65d9 Implement global module in EvalState. 2021-10-27 17:52:48 +08:00
Stephen Chung
79dd3f8186 Add $$ marker to custom syntax. 2021-10-25 22:41:42 +08:00
Stephen Chung
96f08e8cad Merge branch 'v1.1-fixes' 2021-10-23 17:54:03 +08:00
Stephen Chung
4e965c3f3f Fix no_module+internals build. 2021-10-23 17:49:52 +08:00
Stephen Chung
34cf494545 Add Array::sort with no predicate. 2021-10-23 11:51:48 +08:00
wackbyte
9f0347df9f Fix some rustdoc warnings and a typo in FLOAT's docs
Unfortunately, I can't fix the 2 remaining warnings.
2021-10-22 12:03:06 +08:00
Stephen Chung
8a7912a901 Fix build. 2021-10-21 19:51:35 +08:00
Stephen Chung
83f83307ca Fix builds. 2021-10-21 19:30:58 +08:00
Stephen Chung
65ef402440 Eliminate optimize module with no_optimize. 2021-10-21 19:17:34 +08:00
Stephen Chung
315a891ba6 Fine tune array methods. 2021-10-21 19:04:53 +08:00
Stephen Chung
1c921f3784 Add dedup to array. 2021-10-21 17:59:54 +08:00
Stephen Chung
9c16d90de9 Use #[inline(always)] only when relatively certain. 2021-10-21 17:26:43 +08:00
Stephen Chung
313999b0ac Reduce nesting in plugin sub-modules. 2021-10-20 16:22:12 +08:00
Stephen Chung
c8e7c970d1 Add variants of Array methods taking FnPtr with function names. 2021-10-20 11:06:38 +08:00
Stephen Chung
3001e90775 Deprecate From<EvalAltResult> for Result<T, Box<EvalAltResult>> because it is clearer for code to explicitly wrap errors in Err. 2021-10-19 23:52:58 +08:00
Stephen Chung
6d31bb0d19 Do not inline error path functions. 2021-10-19 20:16:36 +08:00
Stephen Chung
2334cd8f56 Avoid cloning in array methods as much as possible. 2021-10-19 19:57:15 +08:00