Jason Turner
021e2a7949
Fix returning of boolean values from functors
2014-10-12 22:12:54 -07:00
Jason Turner
78cd980067
Work around broken Apple clang implementation
...
This line of code does not cause an error on clang-3.4 or clang-3.5
on Linux. Apple's clang is somewhere between the two, no way to know
where.
For an unknown reason, specifying default move operations in 'Data'
causes the compiler to think that Boxed_Value is an incomplete type.
This is highly illogical since Data is only used via a shared_ptr, so
the size / type of Boxed_Value should be fully known (and is known on
every other compiler/platform combination).
2014-10-01 15:49:11 -06:00
Jason Turner
58d9e69479
Work around missing move operations in MSVC12
2014-10-05 21:53:44 -06:00
Jason Turner
935e9de19e
GCC 4.6 fixes to cleanups
2014-10-05 14:58:27 -06:00
Jason Turner
f547b4bb10
Enable moving of data into Boxed_Values when possible
2014-10-05 12:11:46 -06:00
Jason Turner
87e40237d3
Enable moving of Any objects
2014-10-05 11:47:50 -06:00
Jason Turner
5619f2602d
Eliminate extra dynamic allocation in the Stack
2014-10-05 08:58:29 -06:00
Jason Turner
5986531bba
dispatchkit modernization
2014-10-04 22:59:52 -06:00
Jason Turner
81dc4949d2
1/4 through modernization of chaiscript_eval.hpp
2014-10-04 15:34:32 -06:00
Jason Turner
4f5a6da280
Move constructor and noexcept correctness
2014-09-21 14:19:41 -06:00
Jason Turner
e1b80abac4
Update documenation to-dos regarding gcc 4.6
2014-09-20 14:20:37 -06:00
Jason Turner
b6e8605aee
Attempt again to satisfy gcc 4.6
2014-09-20 14:17:41 -06:00
Jason Turner
0e381e333e
Attempt to satisfy G++4.6 and decltype usage
2014-09-20 08:31:18 -06:00
Jason Turner
8c31255012
Windows and GCC 4.6 error cleanups
2014-09-20 07:21:30 -06:00
Jason Turner
e55700b86b
Remove static in bind_first - VS12 warns on it
2014-09-19 21:52:18 -06:00
Jason Turner
81184cbbd7
Rollback template alias, not supported in gcc 4.6
2014-09-19 21:46:52 -06:00
Jason Turner
93c1cfde99
Try out some alias templates for cleanup
2014-09-18 20:48:34 -06:00
Jason Turner
5861c45fc1
C++11 related cleanup and improvments
2014-09-15 21:16:44 -06:00
Jason Turner
6c2ccf3869
Various cleanups prefering lambda to bind
2014-09-14 21:53:11 -06:00
Jason Turner
243f4001d1
Code cleanups
2014-09-12 15:16:24 -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
52179d8333
Merge branch 'develop' of https://github.com/ChaiScript/ChaiScript into develop
2014-09-08 11:11:35 -06:00
Jason Turner
eed90b521d
Spelling corrections and comment fixes
2014-09-08 11:10:53 -06:00
Jason Turner
6bea42c1c0
Speed up to_string performance by relying on C++ versions
...
Addresses #134 , fixing issues introduced by #132
2014-08-31 16:03:42 -06:00
Jason Turner
251790f144
Fix some MSVC warnings
2014-08-31 12:04:02 -06:00
Jason Turner
4ee9ba9c96
Make up some of the performance losses #132
2014-08-30 14:49:31 -06:00
Jason Turner
a71903f185
Add strong reference to range objects #132
2014-08-30 13:36:36 -06:00
Jason Turner
3fe80d70c6
Roll back name of range class, it's half baked from the range fix
2014-08-27 12:24:46 -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
6a3f19d575
Add copy constructor for Type_Info
2014-08-26 09:28:51 -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
3a775097dd
Reduce size of Any template wrapper.
2014-08-17 06:52:11 -06:00
Jason Turner
5692dfc58a
Move to unique_ptr for Any implemenation
...
Speed and size improvements
2014-08-15 20:38:35 -06:00
Jason Turner
c5f6c549ec
Reduce compiled size with template reductions
2014-08-15 20:14:15 -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
61cd633084
Merge branch 'develop' of https://github.com/ChaiScript/ChaiScript into develop
...
Conflicts:
include/chaiscript/language/chaiscript_common.hpp
include/chaiscript/language/chaiscript_parser.hpp
2014-05-11 12:02:33 -06:00
Jason Turner
bcb7172037
Enable MSVC warning for thread safety with statics
...
Clean up a couple of additional issues found while playing with /Wall in MSVC.
2014-05-11 10:52:07 -06:00
Jason Turner
37982cbdaa
Fix issues found by cppcheck 1.65
2014-05-10 20:12:49 -06:00
Jason Turner
c0bf6ee99d
Apply corrections from the "include what you use" tool
...
Generally cleanups of the includes. Making sure each file
can properly stand on its own and forward declares when possible.
2014-05-10 18:41:11 -06:00
Jason Turner
f29af4618a
Make override
a #define for gcc 4.6 support
2014-05-10 09:04:41 -06:00
Jason Turner
6eab8ddfe1
Apply changes applied from clang-modernize
...
Needed 1-2 cleanups by hand. 99% was automatic.
* The version that ships with ubuntu 14.04 seems to not work.
I had to build from scratch
* Use cmake to generate the build commands that clang-modernize wants
```sh
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS:bool=true ../ChaiScript/
```
* Use the clang-modernize tool. Note that you have to be pretty explicit
about the include paths if you want it to also update your include
files
```sh
../llvm-build/bin/clang-modernize ../ChaiScript/src/*.cpp -for-compilers=gcc-4.8 -include /home/jason/ChaiScript/include,/hjason/ChaiScript/include/chaiscript,/home/jason/ChaiScript/include/chaiscript/dispatchkit,/home/jason/ChaiScript/include/chaiscript/language -p compile_commands.json
```
* In my case, it left some unused `typedef`s behind, which I cleaned up.
2014-05-10 08:25:38 -06:00
Jason Turner
5f2796868b
Fix threading warning discovered with MSVC -Wall
...
MSVC in -Wall mode creates approximately 6,500 warnings. 5,000+ of which are
from the std library. The one gem was the potential for threading issues with
the initilization of a function scoped static.
This fixes that.
2014-05-09 17:46:06 -06:00
Jason Turner
fcc9bd9bbb
Start porting of documentatation to markdown style
2014-04-13 19:16:51 -06:00
Jason Turner
2bd1910c70
~30% performance improvement with threading enabled
2014-04-05 22:49:50 -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
6b0e0dc7ae
Removed erroneously kept debug output
2014-03-28 07:04:51 -06:00
Jason Turner
65b0846e41
Address some of the issues found by cppcheck
2014-03-26 16:59:41 -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