148 Commits

Author SHA1 Message Date
Jason Turner
13f53839c9 Check in of function ordering. Breaks function assignment test - need to understand why still. 2010-12-11 21:01:18 +00:00
Jason Turner
7ef1b81504 Simplify how functions are stored and passed. This is the first step in allowing us to sort functions so that dispatches are attempted in an organized order (as opposed to just the order they were added in).
Should have resulted in a speed imrovement too - fewer string copies during dispatch.
2010-11-15 05:52:48 +00:00
Jason Turner
97081b1f33 Remove vestiges of object caching from dispatch kit 2010-11-14 22:28:05 +00:00
Jason Turner
a758c86ba5 Add automatic unwrapping of Proxy_Function_Impl contained boost::function during functor() construction if possible.
Task #110
2010-11-14 01:17:56 +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
e1e48d732f Wrap up of clean up of warnings in 64bit visual studio 2010-11-05 04:05:02 +00:00
Jason Turner
6e18aa3dcd Further VS 64bit warning fixes. 2010-11-05 02:43:52 +00:00
Jason Turner
6a18862c79 Fix some of the 64bit VS warnings. 2010-11-05 02:22:38 +00:00
Jason Turner
70cc1111f3 Regression - fix VisualStudio builds 2010-10-23 16:25:16 +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
bff5b8bce0 Add some quick comments 2010-10-14 14:36:32 +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
c1318eb8b4 Fix llvm (probably affecting gcc too, MSVC is too lax onthe use of "typename") 2010-10-08 18:42:59 +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
fa2a7045a7 Make inplace vector construction result in const temp return. Also clean up construction of vectors in code 2010-10-02 22:19:51 +00:00
Jason Turner
512d6b342d Support for const ranges working 2010-10-02 21:56:33 +00:00
Jason Turner
d8c979b204 Fix for unexpected new base class to std::pair in VS2010. All tests now pass in VS2010 2010-10-02 20:38:46 +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
7b77af3736 Remove commented out code and make variable declarations/scopes consistent with the rest of the C++ codebase 2010-09-30 19:16:03 +00:00
Jason Turner
1e867f5760 Fix broken gcc build introduced during vc2010 fixes 2010-09-30 16:34:27 +00:00
Jason Turner
670eb0692b Visual studio warning reduction and compile fixes for vs2010. Warning suppression on vs2005. Fixes to get cmake working with boost autolinking. Update to support boost 1.44 2010-09-30 14:33:12 +00:00
Jason Turner
30affb8855 Correct assertion that was causing clang (and any other debug build) to fail tests 2010-09-20 12:47:25 +00:00
Jason Turner
22c2be835a Get chaiscript compiling with LLVM/clang. Resulting code crashes, however. 2010-09-20 03:24:48 +00:00
Jason Turner
a39d70dbca Rip out caching in dispatch kit to get a more clean view of the performance world 2010-09-19 23:24:52 +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
Jonathan Turner
7f037b26d4 Updated email addresses in copyright information. 2010-08-10 05:24:07 +00:00
Jason Turner
3a904d9f74 Drastically reduce the number of exceptions thrown at runtime (cannot completely eliminate them all, it's the nature of doing what we are doing with making a runtime interface to a compiled system like we are).
profile.chai should see something like a reduction from 35,000 exceptions to about 100.
2010-08-07 19:27:15 +00:00
Jason Turner
f215cae866 Add string.c_str() and string.data() methods. 2010-08-05 13:38:11 +00:00
Jason Turner
ea93903884 Fix build problem that was causing chaiscript_no_threads to still link with boost_thread 2010-08-04 19:17:33 +00:00
Jason Turner
f03189c168 Quiet down some irrelevant warnings in MSVC2008, make dynamic_cast conversions work in msvc across modules by applying a kludge that will probably not work long term, but does work now. This may mean that chaiscript needs to move to being a library? 2010-08-03 17:21:51 +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
f4e4f92dae Move type registration into module code, and fix problems with unloading of modules and type conversions registered inside of a module.
We have to allow the same type registration more than once now, just in case several different modules register the same conversion.
2010-08-03 01:17:38 +00:00
Jason Turner
4358564065 Make sure the same base/derived relationship is never registered more than once 2010-08-02 18:18:39 +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
cd015a8437 Thread safety for dynamic conversions / registration of new inheritance relationship 2010-08-02 17:01:38 +00:00
Jason Turner
8be4aa08db Reduce runtime calls into the new dynamic cast system by first making sure the type is polymorphic.
Cleanup some std::cout calls
2010-08-02 02:30:41 +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
b971ee44ad Make warnings stricter on windows and clean up all legit warnings in our code. 2010-07-30 18:06:17 +00:00
Jason Turner
b9ae4cd528 Make warnings more strict and fix one warning caught by gcc 2010-07-30 16:25:58 +00:00
Jason Turner
f5f99961c1 Make sure that stack is properly initialized on a per-thread basis. Fixes #95wq 2010-07-23 20:00:17 +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
3d19138c95 Minor reorg of type conversion code to support move to using it in dispatch 2010-07-18 01:52:07 +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
799b3ef388 Update copyright for 2010 2010-05-15 22:48:54 +00:00
Jason Turner
7efb65a5c2 Move to using cmake for VisualStudio 2010-03-28 13:31:19 +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
5c98a5d6e7 Add sync_cache to set_state code to fix logic flaw in resetting of state and memory leak. #92 2010-03-09 02:09:05 +00:00