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