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
Jason Turner
f3090c3857
Add test for number of moves/copies made
...
For #165
2015-04-12 19:20:24 -06:00
Jason Turner
b489ffe3ed
Fix errors with eval/use of scripts
2015-04-10 08:20:30 -06:00
Jason Turner
63684d0042
Add the ability to get the return value from 'use'
2015-04-08 08:17:33 -06:00
Jason Turner
1557dabf4f
Fixes array access with arithmetic conversions
...
Closes #156
2015-04-06 07:21:32 -06:00
Jason Turner
9422bc7b2d
Add failing test for size_t vector access
2015-04-06 06:40:03 -06:00
Jason Turner
c416ca1e4d
Add failing lambda test with bind variable
2015-03-21 19:52:03 -06:00
Jason Turner
d558019bb3
Simplify logical && || operator eval
2015-01-31 13:41:29 -07:00
Jason Turner
e86fc96b2f
Merge branch 'AddMoreWarningFlags' into develop
...
Conflicts:
include/chaiscript/dispatchkit/boxed_number.hpp
include/chaiscript/dispatchkit/proxy_functions.hpp
include/chaiscript/language/chaiscript_eval.hpp
2015-01-16 19:32:53 -07:00
Jason Turner
66801349a8
Merge remote-tracking branch 'origin/OptionalTypedArgs' into develop
2015-01-16 10:19:27 -07:00
Jason Turner
c3f343450d
Fix issues found with cppcheck inconclusive
2015-01-16 10:10:14 -07:00
Jason Turner
9449fca22f
Memory leak error fixes. Various compiler fixes.
2015-01-15 15:42:35 -07:00
Jason Turner
f95ca75aca
Clean up more warnings with stricter warning levels
2015-01-15 14:24:39 -07:00
Jason Turner
497dd89046
Add typed exception unit tests
2015-01-13 14:08:46 -07:00
Jason Turner
31ef683ced
Use SFINAE to clean up divide by zero protection
2015-01-12 10:06:42 -07:00
Jason Turner
420ba68b94
Make sure floating point returns Infinity
2015-01-09 20:20:38 -07:00
Jason Turner
576816e3b1
Add unit test for divide by zero protection
2015-01-09 20:17:20 -07:00
Jason Turner
52d03a66b1
Add future support, and fix returning of r-values
2015-01-06 15:31:06 -07:00
Jason Turner
cc5bf45b3b
Merge branch 'develop' into performance_test
2014-11-14 21:37:07 -07:00
Jason Turner
db207b345b
Merge branch 'add_object_lifetime_test' into develop
2014-11-14 14:57:27 -07:00
Jason Turner
684d724103
Add object lifetime test that failed in v5.4.0
2014-11-14 14:54:57 -07:00
Jason Turner
63a083b47b
Remove uses of std::endl, which imply a flush
2014-11-13 10:13:51 -07:00
Jason Turner
c876a89030
Fix crash during user_defined_conversions_2
...
Temporaries created during user conversion operations were being dropped
before the result of the conversion was able to be used. This fixes that
by temporarily storing the result of the conversion inside the
current Function_Push_Pop context.
2014-11-02 21:37:01 -07:00
Jason Turner
20c0e6016e
Add type_conversion helper and failing unit test
2014-11-02 14:08:57 -07:00
Jason Turner
e85be6eb3d
Add C++ test for user defined conversion
2014-10-28 20:23:19 -06:00
Jason Turner
7b42d5307a
Add ability to register a user defined type conversion
...
Currently this adds a fair bit of overhead. It will need to be evaluated
further before it's merged.
2014-10-28 14:52:24 -06:00
Jason Turner
0e381e333e
Attempt to satisfy G++4.6 and decltype usage
2014-09-20 08:31:18 -06:00
Jason Turner
fde90ad980
Throw exception if user attempts to use null Boxed_Value
2014-09-09 13:43:05 -06:00
Jason Turner
4a70ffe599
Add failing unit test for accessing member of null object
2014-09-08 18:23:53 -06:00
Jason Turner
9c05779fac
Add failing range test
...
Crash occurs if the user attempts to use a range and the source
of the range has gone out of scope. #132
2014-08-27 12:15:47 -06:00
Jason Turner
a6e3fd5b42
Make reflection API part of stdlib
...
removes the reflection module completely. Reflection and the
ability to catch eval errors is too useful.
2014-08-27 12:05:03 -06:00
Jason Turner
fa1f4b795b
Add class keyword for easier user defined types.
...
Issue #118
2014-08-22 21:11:49 -06:00
Jason Turner
cb1c7730cf
Add the ability to look up user defined typenames
...
Closes #124
2014-08-17 09:05:29 -06:00
Jason Turner
f57a14e3de
Allow user to add globals from within script.
2014-05-29 20:44:05 -06:00
Jason Turner
4018c873dc
Spelling fixes, phase 1.
2014-05-29 20:16:47 -06:00
Jason Turner
46e7d0ab99
Clean up tab vs space issues
...
discovered by @axelstudios
2014-05-23 09:56:55 -06:00
Jason Turner
67b5d989cb
Merge remote-tracking branch 'origin/release-4.x' into develop
2014-04-22 19:52:01 -06:00
Jason Turner
c9a244019e
Enhance the inheritance unit tests #117
2014-04-13 08:05:46 -06:00
Jason Turner
926e962fc0
Merge remote-tracking branch 'origin/release-4.x'
...
Conflicts:
.travis.yml
CMakeLists.txt
include/chaiscript/dispatchkit/bootstrap.hpp
include/chaiscript/dispatchkit/boxed_cast.hpp
include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp
include/chaiscript/dispatchkit/function_call_detail.hpp
include/chaiscript/dispatchkit/proxy_functions.hpp
include/chaiscript/language/chaiscript_common.hpp
2014-03-29 07:30:14 -06:00
Jason Turner
caf4495cff
Add unit tests for inheritance with multiple layers
2014-03-29 06:16:21 -06:00
Jason Turner
656b438002
First cast up chain, if that fails, cast down
2014-03-26 10:52:56 -06:00
Jason Turner
56b036052f
Add test for automatic casting down in inheritance
2014-03-26 09:14:06 -06:00
Jason Turner
db8be03cee
Add tests for returning of arithmetic types with conversions
2014-03-26 07:26:23 -06:00
Jason Turner
8d96abe730
Fix test for overload registration with add_class utility
2014-03-24 14:09:20 -06:00
Jason Turner
a38d89cb41
Add fixes for parsing of inplace vectors with newlines
...
from jespada
2014-03-01 13:49:03 -07:00
Jason Turner
b2b9efebe3
Add unit test to make sure heap allocation of chai works
2014-02-26 10:51:31 -07:00
Jason Turner
52bb08f4d5
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/dispatchkit/bootstrap_stl.hpp
include/chaiscript/language/chaiscript_engine.hpp
include/chaiscript/language/chaiscript_prelude.hpp
2014-02-17 16:31:16 -07:00
Jason Turner
71348b7967
Update copyrights to 2014 and some comment formatting
2014-02-17 16:24:29 -07:00
Jason Turner
c6a1d1ea75
Merge branch 'master' into ChaiScript_5_0_CPP_11
2014-01-05 12:23:30 -07:00
Jason Turner
36466a4ac5
Add unit tests for string size() fixes #93 #95
2014-01-05 12:22:44 -07:00
Jason Turner
189ae82cb7
Merge branch 'master' into ChaiScript_5_0_CPP_11
2013-11-27 09:29:28 -07:00
Jason Turner
bf83969723
Add unit test for calling 'count' on const map object. #90
2013-11-27 09:28:23 -07:00
Jason Turner
5cb78ecd68
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/dispatchkit/bootstrap_stl.hpp
include/chaiscript/dispatchkit/boxed_number.hpp
2013-11-27 09:18:08 -07:00
Jason Turner
73b3762f7a
Get ChaiScript ported to MSVC 2013. See Notes in code.
2013-11-02 07:42:06 -06:00
Jason Turner
d44de49fb1
Add explicit tests for accessing data members of const objects
2013-09-27 20:19:16 -06:00
Jason Turner
1708024372
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/chaiscript_threading.hpp
include/chaiscript/dispatchkit/boxed_value.hpp
include/chaiscript/dispatchkit/proxy_functions_detail.hpp
samples/example.cpp
src/test_module.cpp
unittests/multithreaded_test.cpp
2013-05-27 08:48:59 -06:00
Jason Turner
101225aa68
- Fix legit threading issue which shows itself on clang / macos mostly
...
- Fix all warnings that I can / ignore those caused by boost
2013-05-26 22:47:23 -06:00
Jason Turner
47e44d2f9e
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/dispatchkit/bootstrap.hpp
include/chaiscript/dispatchkit/boxed_cast.hpp
include/chaiscript/dispatchkit/boxed_cast_helper.hpp
include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp
include/chaiscript/dispatchkit/dynamic_object.hpp
include/chaiscript/dispatchkit/exception_specification.hpp
include/chaiscript/dispatchkit/function_call.hpp
include/chaiscript/dispatchkit/function_call_detail.hpp
include/chaiscript/dispatchkit/proxy_functions.hpp
include/chaiscript/dispatchkit/proxy_functions_detail.hpp
include/chaiscript/language/chaiscript_engine.hpp
include/chaiscript/language/chaiscript_eval.hpp
2013-02-25 12:08:32 -07:00
Jason Turner
2afc09dad4
Eradicate global base_class registrations to prevent problems with threading and general memory management issues with knowing how and when to clean them up.
2013-02-25 11:00:14 -07:00
Jason Turner
95b69b7572
Merge branch 'master' into ChaiScript_5_0_CPP_11
2013-02-24 15:19:16 -07:00
Jason Turner
1858885010
Add example of wrapping data members of a class #79
2013-02-24 15:11:06 -07:00
Jason Turner
dd79534de1
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/language/chaiscript_common.hpp
include/chaiscript/language/chaiscript_parser.hpp
2013-02-23 21:37:50 -07:00
Jason Turner
fd72b2951a
Correct broken unit test for vector of suffixed numbers
2013-02-23 21:27:01 -07:00
Jason Turner
48f538438d
Get all for loop related unit tests passing and expand the types of expressions
...
that can exist in a for loop
2013-02-23 21:14:37 -07:00
Jason Turner
c9995480e6
Add 'continue' command for loops. Also enhance for() unit tests which are now breaking and need to be fixed
2013-02-23 14:49:20 -07:00
Jason Turner
e298333ac6
Add unit test of suffixed number inside of vector initialization
2013-02-23 08:53:25 -07:00
Jason Turner
691e002f90
Update to support building with MinGW #78
...
We cannot call MinGW a fully supported platform for C++11 yet:
- Concurrency is not yet supported by MinGW, so it is disabled by default
- A problem in the memory model / library loader is preventing derived type
casts from working. This may be able to be worked around, but has not been
yet.
2012-11-28 16:06:45 -07:00
Jason Turner
47ab27fd11
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/dispatchkit/proxy_functions.hpp
releasenotes.txt
2012-11-27 21:42:21 -07:00
Jason Turner
0ea8931b21
Add ability to call functions requiring arithmetic value conversions
...
- Conversions are only attempted on a dispatch
- Conversions are only attempted after a normal dispatch has failed
- Conversions are only attempted if exactly one function matches
the signature of the parameters passed in - excluding the mismatched
arithmetic parameters
- This feature should not be relied on in performance critical code
overhead is added for each function call that requires a conversion
to execute, see the tests performed above.
2012-11-27 21:21:37 -07:00
Jason Turner
85ba42849b
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/dispatchkit/bootstrap_stl.hpp
include/chaiscript/language/chaiscript_parser.hpp
unittests/multithreaded_test.cpp
2012-11-16 16:32:39 -07:00
Jason Turner
afd27a4b01
Fix errors and warnings found on VisualStudio 2005
2012-11-16 12:27:41 -07:00
Jason Turner
6bb90f9d6d
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/language/chaiscript_eval.hpp
2012-11-10 16:59:32 -07:00
Jason Turner
4c65e45598
Correct signing and sizing of integer literals #77
2012-11-10 16:31:05 -07:00
Jason Turner
57c6d72a79
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/dispatchkit/bind_first.hpp
include/chaiscript/dispatchkit/bootstrap_stl.hpp
include/chaiscript/dispatchkit/boxed_cast.hpp
include/chaiscript/dispatchkit/function_call_detail.hpp
include/chaiscript/dispatchkit/proxy_functions_detail.hpp
2012-11-07 17:04:54 -07:00
Jason Turner
923369a4f4
Add support for string::substr #75
...
Also add forgotten missing test for number suffixes
2012-11-07 15:48:25 -07:00
Jason Turner
c5a86401aa
Merge branch 'master' into ChaiScript_5_0_CPP_11
...
Conflicts:
include/chaiscript/dispatchkit/bootstrap_stl.hpp
2012-11-07 13:47:09 -07:00
Jason Turner
9832d1ce39
Add insert and insert_ref methods to "map" types
2012-09-26 12:38:32 -06:00
Jason Turner
ed7bdfb172
Add "erase" function to associative sets (maps)
2012-09-26 11:31:19 -06:00
Jason Turner
8cb49e9494
Merge branch 'master' into 2011-09-09-CxScript
2012-07-16 22:12:29 -06:00
Jason Turner
441cdf0935
Add test showing c linkage working fine [ #16 ]
2012-07-16 22:10:40 -06:00
Jason Turner
f0016d978a
Add test to make sure simultaneous ChaiScript instantiations work
2012-07-16 21:51:06 -06:00
Jason Turner
1155720b14
Add the ability to save and restore the state of local variables #25
2012-07-16 21:27:42 -06:00
Jason Turner
c2934caad6
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
include/chaiscript/language/chaiscript_engine.hpp
src/multithreaded.cpp
2012-07-13 13:32:29 -06:00
Jason Turner
9f309fcbe9
Add tests for multithreaded features #55
2012-07-10 15:10:09 -06:00
Jason Turner
d3b8daeff0
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
CMakeLists.txt
include/chaiscript/language/chaiscript_common.hpp
include/chaiscript/language/chaiscript_engine.hpp
include/chaiscript/language/chaiscript_eval.hpp
2012-06-25 15:40:19 -06:00
Jason Turner
5e6a51ba63
Add failing unit test for remaining error condition to check for.
2012-06-25 07:44:14 -06:00
Jason Turner
a67022e31e
Prep for 5.0.0 release
2012-06-07 20:04:14 -06:00
Jason Turner
b7e1cf41e5
Move to using the new constructor that searched for the stdlib
...
to improve compile time.
2012-06-04 07:31:20 -06:00
Jason Turner
2969f61fe4
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
include/chaiscript/dispatchkit/boxed_number.hpp
include/chaiscript/dispatchkit/dispatchkit.hpp
2012-05-28 11:42:55 -06:00
Jason Turner
ed15cc1730
Clean up a few warnings found in Windows.
2012-05-28 10:48:19 -06:00
Jason Turner
13a049cf54
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
include/chaiscript/language/chaiscript_engine.hpp
2012-05-24 19:33:48 -06:00
Jason Turner
4233d21e5b
Correct scope of operator calls
...
- Enhance reflection module to indicate inheritance
- Add ability to catch errors thrown from a eval
inside of a script
2012-05-24 19:25:29 -06:00
Jason Turner
13ffc92bc3
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
CMakeLists.txt
include/chaiscript/dispatchkit/boxed_value.hpp
include/chaiscript/language/chaiscript_eval.hpp
2012-05-21 10:47:12 -06:00
Jason Turner
433905b33c
Merge branch 'master' of https://github.com/ChaiScript/ChaiScript
2012-05-21 10:17:33 -06:00
Jason Turner
654f7e6b01
Add unit test exposing how scope can leak into operator calls
2012-05-21 07:56:38 -06:00
Jonathan Turner
e853e2e4ac
Merge branch 'master' into 2011-09-09-CxScript
2012-05-20 10:48:45 -07:00
Jonathan Turner
4aec12c68f
Allow operator exprs to span lines
2012-05-20 10:47:50 -07:00
Jonathan Turner
1bdedd3b45
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
include/chaiscript/language/chaiscript_common.hpp
2012-05-20 10:36:49 -07:00
Jonathan Turner
a818e7b185
Merge branch 'master' of github.com:ChaiScript/ChaiScript
2012-05-20 10:17:43 -07:00
Jonathan Turner
5aed00dd0b
Add ternary condition (?:) operator
2012-05-20 10:17:21 -07:00
Jason Turner
349425fe8a
Make vector inplace construction consistent with map
...
- Clone elements into both vector and map
- Be sure to drop dependencies after elements are cloned in
2012-05-20 07:04:22 -06:00
Jason Turner
9162b02ce9
Merge branch 'master' into 2011-09-09-CxScript
2012-05-19 21:42:30 -06:00
Jason Turner
6c57729779
Add unit test for pass_by_preference
2012-05-19 21:42:02 -06:00
Jason Turner
ba9d13bf7b
Merge branch 'master' into 2011-09-09-CxScript
2012-05-19 18:05:58 -06:00
Jason Turner
f1f4aeb4be
Add test and reenable function I accidentally commented out
2012-05-19 18:04:51 -06:00
Jason Turner
c386af6813
Merge branch 'master' of https://github.com/ChaiScript/ChaiScript
2012-05-18 16:58:33 -06:00
Jason Turner
4c5df91d51
Merge branch '2011-09-09-CxScript' of https://github.com/ChaiScript/ChaiScript into 2011-09-09-CxScript
2012-05-18 16:58:13 -06:00
Jason Turner
a0f7c46cc9
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
include/chaiscript/language/chaiscript_engine.hpp
include/chaiscript/language/chaiscript_eval.hpp
2012-05-18 16:57:05 -06:00
Jason Turner
897ad7007f
Get system introspection functions fully working
2012-05-18 16:25:13 -06:00
Jason Turner
13fb930676
First part of system introspection for objs and funcs added
2012-05-18 15:31:42 -06:00
Jonathan Turner
7f5fce001b
Merge branch 'master' into 2011-09-09-CxScript
2012-05-18 08:45:14 -07:00
Jonathan Turner
8af41b1d3c
Add unit test for ignoring hash bang.
2012-05-18 08:43:03 -07:00
Jason Turner
90125d0f9a
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
contrib/geshi/chaiscript.php
include/chaiscript/language/chaiscript_common.hpp
include/chaiscript/language/chaiscript_eval.hpp
include/chaiscript/language/chaiscript_parser.hpp
2012-05-18 09:05:46 -06:00
Jonathan Turner
cebd2c9763
Adding support for switch/case/default to 4.x
2012-05-17 13:56:10 -07:00
Jonathan Turner
025db4ce3a
Oops. Properly handle empty switch statements.
2012-05-17 13:20:15 -07:00
Jonathan Turner
4e14a57016
Add support for switch/case/default statements.
2012-05-17 12:43:25 -07:00
Jonathan Turner
cf97a73485
Syntax updates to a few unit tests.
2012-05-17 10:27:26 -07:00
Jonathan Turner
37b8e6c3f9
Merge branch '2011-09-09-CxScript' of github.com:ChaiScript/ChaiScript into 2011-09-09-CxScript
2012-05-17 10:16:35 -07:00
Jonathan Turner
c73f16fdfe
Fixing 4.x grammar to be backward compatible.
...
Added 3.x unit tests back to show this.
2012-05-17 10:14:50 -07:00
Jason Turner
68df78a2a6
Add examples for using C++ lambdas with chaiscript. #32
2012-05-16 15:55:03 -06:00
Jason Turner
a04dbf2c2d
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
include/chaiscript/language/chaiscript_eval.hpp
unittests/object_lifetime_test.cpp
unittests/utility_test.cpp
2012-05-16 11:50:44 -06:00
Jason Turner
4bcaa75fa4
Throw eval exception if a variable or function is redefined #28
2012-05-16 11:40:43 -06:00
Jason Turner
286b130f47
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
CMakeLists.txt
include/chaiscript/dispatchkit/boxed_number.hpp
include/chaiscript/language/chaiscript_engine.hpp
2012-05-14 10:08:04 -06:00
Jason Turner
277b4eec9a
Add failing test for short comparisons #26
2012-05-14 09:22:03 -06:00
Jason Turner
179a674b00
Fix fix for duplication attribute name errors
2012-01-30 09:16:20 -07:00
Jason Turner
b615d2a423
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
include/chaiscript/language/chaiscript_eval.hpp
2012-01-30 09:10:43 -07:00
Jason Turner
70db5d67ff
Add failing unit test for dynamic object attributes with the same name
2012-01-30 07:55:54 -07:00
Jason Turner
136b877afa
Reduce cost of including chaiscript.hpp
...
- ChaiScript no longer includes or automatically instantiates std lib
- ChaiScript constructor now requires an std lib instance in the form
of a ModulePtr object
- This new layout facilitates better usage of compilation firewalls and
factories for reducing the overall impact of ChaiScript on a project
2011-12-27 21:37:00 -07:00
Jason Turner
9a9d4e1ae0
Remove map_literal_access test, it's invalid as there is no const [] on maps
2011-10-01 11:15:56 -06:00
Jason Turner
3329732ceb
Add scoping test
2011-09-24 15:21:15 -06:00
Jason Turner
e1e0561c7e
Merge branch '2011-09-09-CxScript' of https://github.com/ChaiScript/ChaiScript into 2011-09-09-CxScript
...
Conflicts:
include/chaiscript/dispatchkit/bootstrap.hpp
2011-09-24 15:10:18 -06:00
Jason Turner
52d9e1e871
Remove := operator and fix & usage.
2011-09-24 15:06:31 -06:00
Jason Turner
a28dfd8695
Get & variable declarations working
2011-09-24 14:21:21 -06:00
Jonathan Turner
1eb402e474
Adding an access to a map literal which doesn't seem to be working (though it's vector counterpart does)
2011-09-24 14:14:37 -06:00
Jonathan Turner
3765c23598
Switch lambda syntax over to [](){} format, to line up with C++11.
2011-09-24 13:31:24 -06:00
Jonathan Turner
784ca41270
Switch vectors and maps over to curly braces from square braces to line up with C++11.
2011-09-24 13:15:12 -06:00
Jonathan Turner
4bf3783d0b
Adding new test that is just a var decl.
2011-09-24 12:26:45 -06:00
Jason Turner
92de42e42b
Modify "var" to "auto" for unit tests.
2011-09-24 12:05:08 -06:00
Jason Turner
d6b475239a
Remove boost from utility and associated module tests
2011-09-21 00:04:15 -06:00
Jason Turner
a3c3b8683b
Rename variables to reflect removal of boost
2011-09-11 09:22:44 -06:00
Jason Turner
b297162d13
Move from boost::type_traits to std::type_traits
2011-09-10 13:18:29 -06:00
Jason Turner
aa402fdfde
swap boost::reference_wrapper for std::reference_wrapper
2011-09-10 10:52:59 -06:00
Jason Turner
c842bf14c1
Move from boost::function to std::function
2011-09-10 09:37:40 -06:00
Jason Turner
afa96ecbf9
Begin port to C++11
2011-09-10 06:55:27 -06:00
Jason Turner
0293762904
Add ability to provide global consts in Module objects. Issue #14
2011-09-09 16:52:32 -06:00
Jason Turner
95c6131ce7
Add missing unit test file
2011-09-09 16:01:29 -06:00
Jason Turner
bb0edcb62a
Add exception_specification and unittests for it. #6
2011-06-16 10:14:52 -06:00
Jonathan Turner
9a015a5c49
Fix typo in unit test and add string literal access
2011-06-13 18:14:41 -07:00
Jonathan Turner
5426496b4f
Fix parsing of member access and function calls
2011-06-13 07:43:51 -07:00
Jason Turner
afae221cb3
Add tests for more complex uses of the index operator
2011-06-10 11:18:58 -06:00
Jason Turner
7a9baeb350
Rename of numeric to number
2011-06-08 13:53:55 -06:00
Jason Turner
92bfcfdcf3
Wrap up new Boxed_Numeric support
2011-06-04 04:25:36 +08:00
Jason Turner
226666c2bb
Rename Boxed_POD_Value to Boxed_Numeric, which is more correct.
2011-06-04 04:24:57 +08:00
Jason Turner
319f9e4de9
Fix issues with trim() and with unit tests relying on certain line endings.
2011-05-20 16:01:50 -06:00
Jason Turner
e5f9dbb93b
Fix failing unit tests related to recent renaming of function to Function
2011-04-26 10:17:24 -06:00
Jason Turner
79e8af4f6e
Enhance eval error stack reporting
...
Use OOP to avoid code duplication for eval error tracking. This results
in much more robust stack error reporting and 400 LOC less.
2011-03-27 21:03:24 -06:00
Jason Turner
d6b8e32373
Allow for parse time evaluation of const values.
...
The goal is to allow for more evaluation at parse time, in general, to
increase eval time performance.
- Make AST_Node non-constructable except by derived classes.
- Make data in AST_Node const (as much as possible).
- Replace reflection "text = " with replace_child() (where the
replacement must be with a new parse tree).
- Evaluate floats, strings, ints, chars at parse time to avoid repeat
evaluations (~10% speed up in loops in -O3)
2011-03-27 08:17:04 -06:00
Jason Turner
bbe89e61bc
elimination of unused / outdated code and documentation cleanups.
2011-03-26 22:42:11 -06:00
Jason Turner
87c29ebc91
Ensure that non-shared_ptr, non-boxed_value, non-reference return types
...
are treated as const.
2011-03-26 09:03:36 -06:00
Jason Turner
58e5df0a9a
Even more reorganization of namespaces to help with documentation and
...
clarity.
2011-03-25 15:42:18 -06:00
Jason Turner
637164e457
Move around some namespaces for documentation purposes.
...
Fix problems with building on clang 2.8.
Remove unneeded function for get_engine() and fix functor<> calls that take a Boxed_Value
2011-03-15 17:35:14 -06:00
Jason Turner
46a669dab1
Fix problem with method specifiers for bad_dynamic_boxed_cast exception. Add support for operators to Utility.hpp
2011-03-11 17:56:46 -07:00
Jason Turner
d9a92a5148
Add std::exception as a base clase off std::runtime_error and provide unit test for it.
2011-03-09 21:41:32 -07:00
Jason Turner
0b97fcb4df
Add better namespaces to make documentation easier to handle
2011-03-05 22:50:38 -07:00
Jason Turner
80f576a2f3
Reflection and introspection updates for task #85
2010-12-29 17:58:56 +00:00
Jason Turner
0a2b5d7a40
Find, test and fix an issue related to function argument type reporting when discussing dynamic object functions (ie, def int::somefunc() {} )
2010-12-24 22:26:14 +00:00
Jason Turner
660e978da3
Implement test for function ordering for dispatch. Catch bug for "const" characterization of function parameters. Add test for type characterizations.
2010-12-13 03:32:47 +00:00
Jason Turner
811764e048
Object lifetime specificity test added.
2010-11-11 15:58:51 +00:00
Jason Turner
906140ec78
Find and fix bug in handling of bound function types_infos and arity.
...
Remote outdated samples. Move working samples into samples folder and make part of build process. Make building of samples optional.
Closing #107
2010-11-08 05:22:15 +00:00
Jason Turner
e75a354a04
Apply some module and parameter variable naming standards. Remove ChaiScript template where it was no longer necessary.
2010-11-06 05:20:41 +00:00
Jason Turner
36173d277d
Closing issue #99 : shared const char * memory issues. Also, clean up some file loading overhead (did not seem to have an performance impact).
2010-11-05 22:01:39 +00:00
Jason Turner
67bad374a9
Get mutlifile compilation working again and add a test for it
2010-10-22 21:30:58 +00:00
Jason Turner
2cdfac4e47
Add function meta data functions, plus related tests, and some various cleanups for how functions are constructed internally
2010-10-14 14:33:17 +00:00
Jason Turner
0caa782437
Basic unit tests for casting to **. Storing of (double) pointer types is probably not something we will make an effort to support 100%.
...
Also, tests of all types that are supported.
2010-10-11 03:45:45 +00:00
Jason Turner
caa67e811c
Add boost::ref and boost::cref tests for inputs
2010-10-08 18:48:10 +00:00
Jason Turner
3f87210dc5
Several tests and fixes related to type conversions added. Still more to go.
2010-10-08 15:18:58 +00:00
Jason Turner
c3da778103
Preliminary boxed_cast_test added. This test is meant to test all possible boxed_cast conversions that are available. Currently... some basic ones are failing.
2010-10-08 03:07:26 +00:00
Jason Turner
3ab91356e5
Make inline maps const. Add test for malformed inline map that causes crash
2010-10-02 22:50:09 +00:00
Jason Turner
4ab29013ec
Add currently failing test for const range support
2010-10-02 21:31:18 +00:00
Jason Turner
3ae748c026
Add "Pair" unit test. It was the basis for failures with Dynamic_Object on MSVC2010
2010-10-02 21:28:13 +00:00
Jason Turner
10986c159f
Add support for automatic conversion between chaiscript functions and boost::function. Might merit some look to see how much overhead this adds.
2010-09-13 14:24:12 +00:00
Jason Turner
efae821996
Add some unit tests for reflection and recently discovered array lookup returned from a method problem
2010-08-28 22:55:43 +00:00
Jason Turner
f215cae866
Add string.c_str() and string.data() methods.
2010-08-05 13:38:11 +00:00
Jason Turner
a122403c20
Fix problem with functor<>() not casting to the proper type and add unit test for this case
2010-08-03 15:19:20 +00:00
Jason Turner
2b80ca8cc5
Add missing inheritance unit test
2010-08-03 01:18:15 +00:00
Jason Turner
4ec21ff552
Add test of dynamic object attribute access shared between c++ and chaiscript
2010-07-25 19:56:19 +00:00
Jason Turner
f7086c10ec
Roll back changes from last 2 checkins - user defined type conversions are going to be too slow and too hard to keep track of. Need more portable / generic approach to solving the actual problem - the ability to deal with inhertance properly
2010-07-23 14:55:32 +00:00
Jason Turner
35ac7342b6
Stub in of support for type conversions. Not yet fully implemented.
2010-07-17 21:49:27 +00:00
Jason Turner
3f9b5081c6
Add macro for helping with registering classes with ChaiScript, plus unit test for it
2010-07-17 01:01:21 +00:00
Jason Turner
e11eca406d
Get cpack working for source and deb distribtions. Still need to check nsis and rpm
2010-03-29 15:32:20 +00:00
Jason Turner
39339d769a
Get the rest of the unit tests passing. Note: ChaiScript now requires CMake 2.8, which is almost a year old, so this is fair, but for the meantime we will have to either get it from backports in ubuntu or from cmake.org
2010-03-19 00:50:36 +00:00
Jason Turner
22d994009e
Add missing unit_test.inc file
2010-03-14 14:54:00 +00:00
Jason Turner
567f911093
Move to a more standardized unit testing design which relies less on OS support and can soon be moved to a ctest implementation
2010-03-14 05:19:24 +00:00
Jason Turner
856b682e72
Testing of memberscope so we can close #91
2010-03-09 01:39:54 +00:00
Jason Turner
faaa964565
No longer allow a local variable to be used as a function during dot notation sugar lookup. It's far less confusing this way
2010-01-27 03:54:42 +00:00
Jonathan Turner
31fec2202c
Add the answer to the unittest I added earlier
2010-01-06 19:42:09 +00:00
Jonathan Turner
13178e55e1
Add unit test that dies after r465
2010-01-06 19:39:04 +00:00
Jason Turner
fbf8f53e04
Add Type_Info type and add *_type objects at time of type registration.
2009-11-21 22:47:44 +00:00
Jason Turner
a0c6366479
Added introspecition/classification of types
2009-11-21 06:39:35 +00:00
Jason Turner
15ffbd200a
Fixed unittests broken by last checkin
2009-11-21 06:39:11 +00:00