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
fcc9bd9bbb
Start porting of documentatation to markdown style
2014-04-13 19:16:51 -06: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
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
0a436398dd
Use make_shared #64
2012-07-13 12:25:50 -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
ef46d1bf60
Remove Boxed_Value dependencies, they are not a solution
2012-05-21 08:18:33 -06:00
Jason Turner
af1e02b0bb
Update copyrights to 2012 #23
2012-05-16 11:55:51 -06:00
Jason Turner
bca86c87e1
Update copyrights to 2012 #23
2012-05-16 11:54:46 -06:00
Jason Turner
927619bf47
Switch to using make_sharec
2012-05-14 08:56:33 -06: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
194001f9a1
Remove boost::any requirement by providing our own implementation
2011-09-11 19:51:37 -06:00
Jason Turner
b297162d13
Move from boost::type_traits to std::type_traits
2011-09-10 13:18:29 -06:00
Jason Turner
6bb2678d18
GO from boost::int64_t to std::int64_t, etc.
2011-09-10 11:10:14 -06:00
Jason Turner
aa402fdfde
swap boost::reference_wrapper for std::reference_wrapper
2011-09-10 10:52:59 -06:00
Jason Turner
53108463df
Move from boost::bind to std::bind
2011-09-10 10:19:55 -06:00
Jason Turner
e2da56f199
Eliminate use of boost::shared_ptr
2011-09-10 07:24:46 -06:00
Jason Turner
afa96ecbf9
Begin port to C++11
2011-09-10 06:55:27 -06:00
Jason Turner
5b40a85024
Add direct access to Boxed_Value data * for high performance operations
2011-06-04 04:26:00 +08:00
Jason Turner
897385953c
More documentation updates and additions to getting started guide
2011-05-22 12:08:24 -06:00
Jason Turner
8a0ef143c9
C++ API documentation is complete. ChaiScript keyword and language documentation about 75% complete (mostly ported from website.)
2011-04-17 09:29:34 -06:00
Jason Turner
0d238b1617
Documentation updates and namespace reorg for docs.
2011-04-02 20:52:49 -06:00
Jason Turner
9dd9ffec46
Update copyright information for 2011
2011-03-15 09:42:33 -06:00
Jason Turner
f6b6936348
Normalize on include guard style, removing __ reserved words
2011-03-08 14:06:09 -07:00
Jason Turner
0b97fcb4df
Add better namespaces to make documentation easier to handle
2011-03-05 22:50:38 -07: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
74e719c053
Add object dependency tracking to make sure that during nested function calls all returned values are not prematurely destructed.
...
All tests pass on vc2008 now.
2010-10-02 13:26:06 +00:00
Jason Turner
43dbd8ac78
Rip out object caching. With this removed it becomes that much more critical that we fix the scoping issue with references returned from temporaries.
2010-10-01 02:25:29 +00:00
Jason Turner
22c2be835a
Get chaiscript compiling with LLVM/clang. Resulting code crashes, however.
2010-09-20 03:24:48 +00:00
Jonathan Turner
7f037b26d4
Updated email addresses in copyright information.
2010-08-10 05:24:07 +00:00
Jason Turner
a463ee5ff2
Clean up key used in the thread global object cache, to make sure proper type comparisons are done in the corner cases found in the main boxed_cast<> code a while back
2010-08-02 17:51:30 +00:00
Jason Turner
edee892cad
Initial check in of support for upcasting during function invocation. No examples or tests are checked in yet. Some reorg was necessary to get things compiling in the right order. Is not currently thread safe and probably does not work properly across module boundaries
2010-08-02 01:38:25 +00:00
Jason Turner
799b3ef388
Update copyright for 2010
2010-05-15 22:48:54 +00:00
Jason Turner
fb5ba0be26
Remove std::swap implementation that was not supported for multiple file compilation.
2010-01-03 15:03:26 +00:00
Jason Turner
2805af1ed2
move from std::numeric_limits::min() to boost::integer_traits::const_min - avoids runtime overhead of the function call.
2009-12-11 15:35:59 +00:00
Jason Turner
0c0df2c982
VS 2008 related corrections.
2009-12-08 15:57:31 +00:00
Jason Turner
37b2ac2056
Implement proper swap for Boxed_Value
2009-12-05 19:30:09 +00:00
Jason Turner
636c55493c
Smartly size the integer returned from a Boxed_POD_Value operation to return an "int" if the resulting value is small enough
2009-12-01 03:52:57 +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
391eaa9e11
VC++ 2008 warnings cleanups
2009-11-15 03:26:47 +00:00
Jason Turner
cca477dae6
Only share const globals between threads. Require all globals to be const.
2009-11-11 05:47:54 +00:00
Jason Turner
e6c6223c5b
Operator handling rewrite and fleshing out of operators to include all standard C++ operators
2009-11-10 05:55:58 +00:00
Jason Turner
cbc61d898c
Add "is_null" for boxed_values to see if they contain a null shared_ptr value
2009-11-08 16:30:12 +00:00
Jason Turner
fe5a935abd
add is_undef functionality to boxed_value
2009-11-08 15:16:15 +00:00
Jason Turner
1122f2c818
Clean up reference counting implementation while improving compile time and compromising runtime slightly
2009-10-20 00:34:15 +00:00
Jason Turner
7cdd772f2b
Add const correctness for proxy functions. Add unit tests for function variable assignment scenarios
2009-09-19 21:13:12 +00:00
Jason Turner
b185e2e792
Make Type_Info internal data private and provide more rigorous definitions for comparisions of objects
2009-09-08 13:31:14 +00:00
Jason Turner
798908f127
Add loadable module support for ms Visual C++ and fix visual studio specific type identification problems, (while making the C++ more correct)
2009-09-07 17:05:57 +00:00
Jason Turner
7cc6a3cab9
Add support for loadable modules on POSIX systems
2009-09-06 23:33:03 +00:00
Jason Turner
4b40812e26
Add const_var helper function for making const values.
2009-09-06 02:09:19 +00:00
Jason Turner
ef8cd1f591
Add more robust support for handling of const ptr values
2009-09-05 23:46:21 +00:00
Jason Turner
3094ff6e3b
Made thread saftey a compilation option for performance and dependencies reasons
2009-09-05 00:16:46 +00:00
Jason Turner
6c4872eae9
Initial check in of multithreaded support for chaiscript
2009-08-31 19:50:41 +00:00
Jason Turner
6775863415
Clean up chaiscript namespace by adding the "detail" namespace for internal functions/classes
2009-08-08 16:38:04 +00:00
Jason Turner
a3d4b6698a
Favor filtering of functions during dispatch over exceptions to determine appropriate function to call. Results in approximately 50% reduction in runtime for long running scripts
2009-08-06 04:22:13 +00:00
Jason Turner
ba6b392174
Approximate 20% reduction in runtime on long running scripts, based on profiling data. Reduce number of execution of object cache culling, reduction of copies of the stack and reduction of Boxed_Value copies
2009-08-05 02:43:13 +00:00
Jason Turner
00ac8113c0
Add additional support for boost::shared_ptr as a return type
2009-07-21 02:00:39 +00:00
Jason Turner
a5a1e3ee1b
Revamped method for bootstrapping of types, using a new Module class that collects everything related to a type or group of types
2009-07-19 03:04:46 +00:00
Jason Turner
4d4c26bf73
Major updates to the C++ API. Please see trunk/src/example.cpp to follow along
2009-07-18 18:05:54 +00:00
Jason Turner
9b733b2621
Correct g++ compilation error caused by r308, fix for casting to const boost::shared_ptr<> &.
2009-07-16 23:46:19 +00:00
Jason Turner
727dc7b0d6
Add support for boxed_cast<> to const boost::shared_ptr<Type> &, fixing the problem Jon was having
2009-07-16 21:30:01 +00:00
Jason Turner
8dbb43f45f
Clean up last bug fix with full support for const & (and presumably some support for const *) contained types.
2009-07-15 23:36:10 +00:00
Jason Turner
ec2f81c674
Fix bug that jon discovered that affects attempting to return a reference to an object that shares a memory location with a containing object but has a different type.
2009-07-15 23:12:49 +00:00
Jonathan Turner
5ec3901396
Some minor source header touchups
2009-07-13 03:13:04 +00:00
Jason Turner
a70dc12b2a
Documentation updates.
2009-07-12 03:07:45 +00:00
Jason Turner
c9e67f2063
use relative include paths to make moving files around/portability easier potentially.
2009-07-11 13:00:43 +00:00
Jonathan Turner
ac2b59796f
Moving internal includes to point to the new dir structure
2009-07-10 15:24:24 +00:00
Jonathan Turner
a40c71967c
Move dispatch kit into new include tree
2009-07-10 15:06:47 +00:00