Jason Turner
93bc6109e7
Merge branch 'develop' into typed_function_ordering
2016-12-05 19:19:41 -07:00
Jason Turner
fb7f8f194c
Add support for r-value parameters and unique_ptr
...
Notes
* Due to the limitations for how Boxed_Value is handled
the unique_ptrs must still be wrapped in a shared_ptr
* However, this caveat does not directly affect the user
2016-12-05 12:07:56 -07:00
Jason Turner
359897a442
Flesh out parser and tracer usage cases
2016-10-28 13:36:10 -06:00
Jason Turner
332a62769b
Merge branch 'release-5.x' into develop
2016-10-28 10:57:55 -06:00
Jason Turner
a38b254a98
Only allow class in top level scope
...
* Throw error if class is in unexpected place
* Allow catching of `eval_error` from inside of script
closes #297
2016-10-28 10:56:12 -06:00
Jason Turner
77231461ca
Add test for class inside of scope
...
Addresses #297
2016-10-28 09:01:40 -06:00
Jason Turner
4119e6e7d8
Merge branch 'develop' into typed_function_ordering
2016-10-26 14:33:33 -06:00
Jason Turner
eefd50a6bc
Merge branch 'release-5.x' into develop
2016-10-26 14:05:28 -06:00
Jason Turner
9f30d84f39
Add conversion to bool tests as conditionals
2016-10-26 12:29:30 -06:00
Jason Turner
0fe78f7ba5
Make sure to not break non-basic interface
2016-10-26 08:47:49 -06:00
Stephen Berry
d61e322c1d
Added unit tests for namespaces.
...
These demonstrate the global scope of namespaces, defining functions and variables within namespaces, and namespace nesting by copy or reference.
2016-10-18 08:57:51 -05:00
Jason Turner
7d9e1b3af7
Add ability to disable loading external files
...
* Options are passed to ChaiScript constructor
* load_module / eval_file / use can be disabled
from script context
2016-10-17 20:51:15 -06:00
Jason Turner
c97a69537d
Add ability to get current script context
...
closes #277
2016-10-13 20:44:13 -06:00
Jason Turner
690b96d9ee
Change fuzzy tests to account for prefix & changes
2016-10-07 11:26:30 -06:00
Jason Turner
b091439567
Merge branch 'release-5.x' into develop
2016-10-07 09:13:19 -06:00
Jason Turner
665125665a
Bump to 5.8.5
...
- remove parsing of unary &, it was unused
2016-10-06 22:32:55 -06:00
Jason Turner
58faea1cf2
Add conversion to bool compile test
...
Re: #275
2016-10-06 14:52:34 -06:00
Jason Turner
8b7fe33bf1
Fix order of operations for prefix and '*', '/'
...
The problem is that Prefix did not properly participate in
operator precedence. I've fixed this, at least for the moment,
by adding a final depth of precedence that can be called when
the depth gets to the bottom.
closes #285
2016-10-06 14:44:30 -06:00
Jason Turner
b2907fc608
Merge branch 'release-5.x' into develop
2016-10-05 15:14:58 -06:00
Jason Turner
4b81a24a0a
Fix numeric mixed-convesion operations
2016-09-24 17:15:17 -06:00
Jason Turner
4e6e63ab5d
Cleanups and split up into _basic options
2016-08-27 10:33:44 -06:00
Jason Turner
7561aa8828
Get all unit tests passing
2016-06-29 21:06:31 -06:00
Jason Turner
b0f07cbe5d
Merge branch 'develop' into cleanups_and_reworkds
2016-06-29 16:11:00 -06:00
ELynx
5642e062e6
Fix unittest
2016-06-27 18:02:50 +03:00
ELynx
830b7c93ca
Fix unit test, limit unit test to UTF-8
2016-06-27 15:26:07 +03:00
ELynx
e3e90de02a
Proper comparison in unit tests; remove leftover static keyword
2016-06-27 13:09:32 +03:00
ELynx
2adefaf46d
Basic unit tests
2016-06-27 12:39:03 +03:00
Jason Turner
e3d1741c63
Add C++17-style if-init blocks
2016-06-26 22:10:53 -06:00
Jason Turner
09bdec4882
Add ranged-for loops
...
closes [#145 ]
2016-06-26 20:00:01 -06:00
Jason Turner
dcedd64032
Merge branch 'develop' into cleanups_and_reworkds
2016-04-29 10:40:38 -06:00
Jason Turner
7d11b7c5f1
Merge branch 'develop' into typed_function_ordering
2016-04-20 06:41:37 -06:00
Jason Turner
06b2893bfb
Update tests for removal of ChaiScript_Parser from stdlib
2016-04-17 21:15:59 -06:00
Jason Turner
10b984556d
Add global & test
2016-04-16 14:23:11 -06:00
Jason Turner
f3f84594ee
A few parser cleanups
2016-04-16 12:04:18 -06:00
Jason Turner
32bd936a18
Remove 'annotation' feature
2016-04-16 07:52:39 -06:00
ELynx
62e34c097c
Add capacity check; fix vector_reserve unittest
2016-04-15 14:12:07 +03:00
ELynx
cdb9dcc154
Fix list unittest
2016-04-15 14:08:03 +03:00
ELynx
49ef5306a9
Add resize to stl list and vector; add reserve to stl vector
2016-04-15 13:15:30 +03:00
Jason Turner
720395e47a
clean up reflection tests for new capabilities
2016-04-14 09:31:38 -06:00
Jason Turner
dd6b38cafb
Merge branch 'release-5.x' into develop
2016-03-30 13:01:46 -06:00
Jason Turner
c07c2a9cc2
Make sure type_info works with shared_ptr &
2016-03-28 15:57:26 -06:00
Jason Turner
46c45e8fc7
Update boxed_cast_tests to account for new features
2016-03-27 20:50:15 -06:00
Jason Turner
328aef10d7
Add failing test for non-const shared_ptr &
2016-03-27 18:24:38 -06:00
Jason Turner
5872b020fa
First pass at updating JSON lib
...
* eliminate manual memory management
2016-03-16 18:32:10 -06:00
Jason Turner
82a69ca043
Merge branch 'develop' into typed_function_ordering
2016-03-15 12:46:47 -06:00
Jason Turner
de63529887
Add failing test for pointer based member data
...
Issue #245
2016-03-12 20:08:15 -07:00
Jason Turner
d95f59fa97
Add test for dynamic object assignments
2016-03-12 19:50:58 -07:00
Jason Turner
dfb2394b0b
Merge branch 'update_travis_toolchain' into typed_function_ordering
2016-03-11 15:00:28 -07:00
Jason Turner
83b966df47
Address g++4.8 warnings
2016-03-05 07:45:33 -07:00
Jason Turner
c24004c70e
Disable more warnings for catch/gcc
2016-03-04 22:09:26 -07:00
Jason Turner
a0ee8d1137
Address more catch/msvc warnings
2016-03-04 21:48:08 -07:00
Jason Turner
0cb4c18638
Fix some more windows warnings
2016-03-04 18:22:21 -07:00
Jason Turner
ad7e2138d9
Various Windows fixes
2016-03-04 17:39:32 -07:00
Jason Turner
0eee23109e
Upgrade catch to new version
2016-03-04 16:05:08 -07:00
Jason Turner
b663654a6d
Add missing header for locale
2016-03-04 15:49:31 -07:00
Jason Turner
457367ea7b
Add failing tests for locale changes
...
re #250
2016-03-04 14:31:19 -07:00
Jason Turner
c07f413694
Merge branch 'develop' into typed_function_ordering
2016-03-04 13:33:29 -07:00
Jason Turner
a6dcbb1f1c
Fix multithreaded test
2016-03-04 08:28:49 -07:00
Jason Turner
d4f02b5e67
Address sign promotion warnings, add todo test
2016-03-04 07:58:21 -07:00
Jason Turner
172ab7b8e4
Merge branch 'develop' into typed_function_ordering
2016-02-18 08:57:55 -07:00
Jason Turner
caf0a8b5d1
Remove extra version of push_back async vector
2016-02-02 07:25:41 -07:00
Jason Turner
357df5c8ec
Remove async test from list_push_back
2016-02-01 15:38:32 -07:00
Jason Turner
b104b26f11
Also allow lcase global keyword
...
Closes #221
2016-01-31 19:15:32 -07:00
Jason Turner
872f16e45a
Add some tests that were laying around
2016-01-30 06:56:01 -07:00
Jason Turner
bde2a45384
Add map conversions
...
closes #57
2016-01-29 20:41:12 -07:00
Jason Turner
b2ae317877
Seperate out async moves into a separate test
2016-01-29 19:13:10 -07:00
Jason Turner
b33f0a08bc
Remove initializer_list conversion due to the issues mentioned here:
...
http://stackoverflow.com/questions/18895583/convert-a-vectort-to-initializer-listt
2016-01-29 16:04:06 -07:00
Jason Turner
f697384028
Merge pull request #243 from vrennert/feature_initializer_list_conversion
...
Added initializer_list<T> conversion as possible function call argument or return type.
2016-01-29 15:20:38 -07:00
Jason Turner
209d6ed2e4
Merge remote-tracking branch 'ktm/set-global' into develop
2016-01-29 15:14:32 -07:00
Viktor Rennert
af1eba1b0e
Added type fix for gcc/clang and tiny formating fixes.
2016-01-26 18:36:45 +01:00
Jason Turner
f82f6c2068
Some fixes found by resharper c++
2016-01-25 16:41:11 -07:00
Viktor Rennert
fcca453223
Added initializer_list<T> conversion as possible function call argument or return type.
2016-01-26 00:06:57 +01:00
Jason Turner
5cb6f6a1a2
Merge branch 'develop' into typed_function_ordering
2016-01-20 18:28:28 -07:00
Jason Turner
52c96de6a8
Merge pull request #239 from ChaiScript/assign_to_result_of_map
...
Add test for assignment of map() return vector
2016-01-20 18:20:04 -07:00
Jason Turner
12cbbd2097
Add test for assignment of map() return vector
2016-01-19 10:00:26 -07:00
ktm
4aa370fbfd
restore newline to bottom of file
2016-01-18 13:33:38 -05:00
ktm
43def57852
add set_global, update unit test
2016-01-17 00:01:51 -05:00
Jason Turner
373a3688c9
Merge branch 'feature_enum_utility_helper' into Fix_Crash_From_CppCon
2016-01-03 18:13:48 -07:00
Jason Turner
208107fd7e
Add additional tests for vector conversion
2016-01-03 17:58:05 -07:00
Jason Turner
888d897a3e
Simplify use of enum helper
2016-01-02 19:59:54 -07:00
Jason Turner
e32714c456
Add some operators for Enums made with helper class
2016-01-02 19:45:10 -07:00
Jason Turner
d7489358f3
Add failing test for vector of enum values
2016-01-02 19:24:14 -07:00
Viktor Rennert
316ba45e3c
Added unittest to cover utility::add_class<Enum> registration.
2016-01-02 20:54:55 +01:00
Jason Turner
681b7db727
Merge branch 'Fix_Crash_From_CppCon' of github.com:ChaiScript/ChaiScript into Fix_Crash_From_CppCon
2015-11-20 06:49:35 -07:00
Jason Turner
4826bddb5b
Add overloads for cosnt *& casts
2015-11-20 07:46:52 -06:00
Jason Turner
49436e5740
Merge branch 'develop' into Fix_Crash_From_CppCon
2015-11-20 05:53:44 -07:00
Christian Kaeser
202204a82a
Limit hexadecimal escape sequence length
...
Helps with cases like "\xFFecho" by limiting the number of hex digits
that will be parsed to maximum suitable for the char type.
This rule differs from the C/C++ standard, but ChaiScript does not offer
the same workaround options.
Furthermore, without it having hexadecimal sequences longer than can fit
into the char type is undefined behavior anyway.
2015-11-08 18:36:16 +01:00
Christian Kaeser
34c6b17215
Fix broken escape sequence parsing after octal/hex escape
...
The parser code just added the first character after an octal/hex sequence
as raw text, resulting in erroneous data whenever another escape
sequence follows directly after.
2015-11-08 18:07:04 +01:00
Jason Turner
d9f86a96f0
Add initial failing test
2015-11-03 15:59:43 -07:00
Jason Turner
95256417ac
Merge branch 'add_performance_tests' of github.com:ChaiScript/ChaiScript into typed_function_ordering
2015-10-25 15:00:08 -06:00
Jason Turner
882cbf2dfb
Add option explicit code, but don't throw yet
...
Work towards #218
2015-10-16 18:47:26 -06:00
Jason Turner
38b98c55cc
Add test for dynamic object option explicit
2015-10-16 18:37:02 -06:00
Jason Turner
5aecb7f17b
Add boolean comparison tests #217
2015-10-15 21:59:46 -06:00
Jason Turner
84554ed0a5
Add another vector assignment test
2015-10-15 21:32:16 -06:00
Jason Turner
36765df3c0
Fix vector element assignment issues
2015-10-15 21:20:12 -06:00
Jason Turner
b11ebf9e8f
Add failing test for vector assignment operations
2015-10-15 21:13:17 -06:00
Jason Turner
84e2d449b9
Support default case in the non-last position
2015-10-15 15:02:49 -06:00
Jason Turner
d2cf12f948
Add tests for binary literals
2015-10-03 21:01:52 -06:00
Jason Turner
beedf13d01
Make binary literals sized like other integer types
2015-10-03 16:38:41 -06:00
Jason Turner
18e5ee0ba2
Wrap up generic string escape support
...
Closes #211
2015-10-02 12:16:44 -06:00
Jason Turner
6a4647af43
Add last test for json support
...
Closes #207
2015-10-02 08:12:50 -06:00
Jason Turner
d9fa5605ac
Add operator overload tests
2015-10-01 09:39:03 -06:00
Jason Turner
3a8cb581cc
Merge branch 'add_json_support' into develop
2015-09-30 14:39:21 -06:00
Jason Turner
b434d26a5d
Add json tests
2015-09-30 14:24:56 -06:00
Jason Turner
ca35128503
Add failing test for long long conversions
2015-09-30 06:32:34 -06:00
Jason Turner
08935beaf3
Add tests for pushing move only values
2015-08-27 15:23:36 -06:00
Jason Turner
2d2251c1da
Merge branch 'develop' of github.com:ChaiScript/ChaiScript into typed_function_ordering
2015-08-26 18:58:34 -06:00
Jason Turner
0adacc0b5e
Merge branch 'develop' of github.com:ChaiScript/ChaiScript into typed_function_ordering
2015-08-26 18:47:43 -06:00
Jason Turner
818fd0b823
Add function ordering test
2015-08-26 18:47:32 -06:00
Jason Turner
179eaefafe
Add failing test for functor scope
2015-08-25 17:10:45 -06:00
Jason Turner
bd9af5eff4
Order typed functions over untyped
...
specifically the chaiscript defined ones
2015-08-14 21:58:54 -06:00
Jason Turner
5aa0bfcea4
Add some convenience functions for parsing
2015-08-11 19:20:18 -06:00
Jason Turner
913d2fd20f
Add test for variable scope in functor calls
...
For bug #191
2015-08-01 11:03:55 -06:00
Jason Turner
9d17b18f26
add failing tests for #198
...
1<-1 fails to parse
2015-08-01 10:04:42 -06:00
Jason Turner
b946af42cc
Update fuzzy_tests to take into acount parsing fixes
2015-07-24 12:09:20 -06:00
Jason Turner
b3d2350f33
Add test for order of operations
2015-07-24 11:49:23 -06:00
Jason Turner
8239206ec5
Update fuzzy_tests now with more parser fixes in
2015-07-22 15:42:31 -06:00
Jason Turner
1f72afc8f5
Add crashes and fixes found during fuzzy testing
...
* Let unhandled exceptions propogate to user
* Report eval_error when break statement is not in loop
* Fix handling of 0 length scripts closes #193
* Don't crash on arity mismatch - Specifically affects the case where no overloads exist for a given function
* Fix error printing for `bind` calls
* Handle unexpected continue statement
* Check arity during bind
* Don't allow arith conversion on variadic function
* Correct `bind` parameter match count
* Add in expected Boxed_Value exception cases
* Check access to AST, don't allow `;` in func def
* Don't attempt arithmetic unary & call
* Don't crash on 0 param call to `bind`
* Catch errors during member function dispatch
* Properly handle type of const bool &
2015-07-16 12:51:50 -06:00
Jason Turner
fe33a6aacb
Add failing test for issue #192
2015-07-11 14:51:29 -06:00
Jason Turner
496f5aff7a
Add test for passing non-const ref param
2015-07-03 14:16:24 -06:00
Jason Turner
f9e0193353
Add map .at method from c++11
...
closes #184
2015-06-10 18:41:50 -06:00
Jason Turner
630c618ae7
Remove automagic wrapping to std::function<>
2015-05-22 09:39:21 -06:00
Jason Turner
051f483d20
Add failing non-polymorphic Derived->Base test
2015-05-20 09:48:46 -06:00
Jason Turner
fc4b739839
Merge pull request #175 from totalgee/develop
...
Added elapsed time helper to chai executable
2015-05-06 09:50:06 -06:00
Glen Fraser
bd176cfde2
Renamed timer function to now(), added perf unit test
2015-05-06 11:37:37 +02:00
Jason Turner
cf4efacbe8
Add 'GLOBAL' keyword #122
...
Also provides functionality that makes things like overriding the built in
'print' possible. See #67
2015-05-04 11:47:36 -06:00
Jason Turner
fdcc5959c7
Fix tests failing w/MSVC2013 because of formatting
2015-05-03 10:31:10 -06:00
Jason Turner
3e5034ecf8
Merge branch 'smaller_make_shared' into develop
2015-04-29 16:58:34 -06:00
Glen Fraser
d762ef08b6
Support scientific notation for floating point
2015-04-29 19:40:58 +02:00
Jason Turner
986699a3fe
Merge branch 'develop' into smaller_make_shared
...
And also apply cleanups suggested from resharper
Conflicts:
include/chaiscript/language/chaiscript_parser.hpp
2015-04-27 11:55:12 -06:00
Jason Turner
dde7d27b96
A smaller make_shared derived types
2015-04-24 21:35:56 -06:00
Jason Turner
bc7668c700
More windows warning fixes because of Catch
2015-04-24 09:53:06 -06:00
Jason Turner
1a37343e8b
Check more compiler/analyzer warnings
2015-04-24 06:50:34 -06:00
Jason Turner
ddc6ac8e00
Eliminate unnecessary warnings on MSVC (catch)
...
Mostly caused by catch
2015-04-23 16:27:43 -06:00
Jason Turner
0e41e373c6
Clean up warnings generated by catch
2015-04-23 15:29:14 -06:00
Jason Turner
9ab0b1108a
Wrap up method_missing docs and tests
2015-04-23 15:03:08 -06:00
Jason Turner
606c1d9d00
Merge remote-tracking branch 'origin/method_missing' into develop
2015-04-23 09:13:28 -06:00
Jason Turner
28f89475b0
Reduce build time for tests
2015-04-22 22:19:57 -06:00
Jason Turner
1a396be69d
Minor unitest cleanups #168
2015-04-22 12:40:17 -06:00
Jason Turner
f3943f215f
Merge remote-tracking branch 'origin/develop' into method_missing
2015-04-22 07:29:46 -06:00
Jason Turner
0f4bd2b889
Merge pull request #172 from ChaiScript/libcxx_ubuntu_14_04
...
Libcxx ubuntu 14 04
2015-04-22 07:26:10 -06:00
Jason Turner
90102cebd7
Full dynamic object system built on method_missing working
2015-04-21 22:36:48 -06:00
Jason Turner
059c7bcca1
Merge branch 'fix_attr_function_calls' into develop
...
Conflicts:
src/test_module.cpp
2015-04-21 12:45:59 -06:00
Jason Turner
0ed9602ba9
Get libc++ on ubuntu 14.04 working
...
The std::is_member_function_pointer<> template is broken on this version
of the libc++ standard library for const member functions.
To get ChaiScript to work with this, we had to work around the use of
automatically generated std::function wrappers in many cases. This
actually cleaned up the code in a few places and muddied it up in one.
2015-04-21 12:01:29 -06:00
Jason Turner
db34899225
Address msvc issues with #167 #165
...
The best we can get it down to is 2 moves in MSVC, it does not
elide the moves/copies as well as GCC and Clang do
It's not possible for us to support registering of array types in
MSVC12, but we can in MSVC14 with the latest release of the
compiler.
2015-04-18 20:51:45 -06:00
Jason Turner
71245aa703
Add array type support #167
2015-04-17 20:02:09 -06:00
Jason Turner
ecd2e523f7
attributes / members holding functions works fully now
...
Issue #155
2015-04-17 16:32:59 -06:00
Jason Turner
d2ed8fdcf1
Get class members that are functions working
...
Automatic conversion of return values into Proxy_Function objects
Issue: #155
2015-04-17 12:18:47 -06:00
Jason Turner
2f444542ab
Add test for attr calls specifically
2015-04-17 07:35:12 -06:00
Jason Turner
268868f102
Add failing tests
2015-04-16 20:00:48 -06:00