Jason Turner
|
0b97fcb4df
|
Add better namespaces to make documentation easier to handle
|
2011-03-05 22:50:38 -07:00 |
|
Jason Turner
|
5cc4a758ab
|
Make scoping more explicit during initialization of alphabet
|
2011-02-21 19:25:22 -07:00 |
|
Jason Turner
|
7c2550ba74
|
Modify alphabet to m_alphabet to match rest of coding style
|
2011-02-21 19:17:36 -07:00 |
|
clanmills
|
65d054b36e
|
Three lots of changes:
1) Changes post code review by Jason
2) Fixing bug in end of line processing on Windows with cr-lf
3) Adding command-line options to chai
|
2011-02-16 08:21:19 -08:00 |
|
clanmills
|
894063261e
|
Changes to parser.
|
2011-02-14 10:33:40 -08: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
|
e90d49bb9d
|
Function ordering is working properly now, just need to add a unit test for it.
|
2010-12-11 22:38:08 +00:00 |
|
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
|
65edf30ef0
|
Fix regression in parsing of empty file. Visible in windows debug mode, but probably affects all platforms.
|
2010-11-15 22:45:57 +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
|
3aee589274
|
Remove unused variable
|
2010-11-15 00:01:33 +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
|
5f661fad20
|
Get rid of a C++ conversion and make it a static_cast
|
2010-11-12 23:19:30 +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
|
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 |
|
Jonathan Turner
|
5a92146d28
|
Fix to disallow mixing inline map and array elements
|
2010-10-02 23:39:17 +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
|
8b35434e6f
|
rip out a couple hundred lines of code with inheritance
|
2010-09-30 18:17:32 +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
|
cfa42158af
|
Clean up reflection a bit, and how we do pretty printing of ast nodes. Registered new internal_to_string in reflection module so that we
can have automatic pretty printing of ast nodes during repl eval.
|
2010-08-30 13:37:50 +00:00 |
|
Jonathan Turner
|
054179ead3
|
Commenting out of previous node value caching scheme. This allows us to profile later, without having these smaller optimizations
clutter up the flow. This also allows us to pass the reflection test.
|
2010-08-29 21:33:11 +00:00 |
|
Jonathan Turner
|
8a6a46d0d3
|
Fix to the method/array dispatch issue
|
2010-08-29 19:49:57 +00:00 |
|
Jason Turner
|
31feab6053
|
Fix to parsing of single-line comments where the comment at the end of a line was merging statements separated by a single line comment
|
2010-08-28 22:14:09 +00:00 |
|
Jason Turner
|
7ef12f634d
|
Register AST_Node and Parser, overloaded eval for AST_Node and some const correctness fixes
|
2010-08-28 21:48:30 +00:00 |
|
Jonathan Turner
|
c6452c4bd6
|
Rename of Token to AST_Node to be more correct
|
2010-08-28 18:38:01 +00:00 |
|
Jason Turner
|
329244759f
|
Fix warnings discovered on macos
|
2010-08-28 17:58:02 +00:00 |
|
Jonathan Turner
|
c5f20ea158
|
A little cleanup of logical and/or since those are now separate evals.
|
2010-08-19 14:42:18 +00:00 |
|
Jonathan Turner
|
58c62f6333
|
More refactoring of parser to use the token children types directly instead of using a giant switch statement during build_match.
|
2010-08-15 02:04:35 +00:00 |
|
Jonathan Turner
|
7f037b26d4
|
Updated email addresses in copyright information.
|
2010-08-10 05:24:07 +00:00 |
|
Jonathan Turner
|
b1e357423f
|
Move structure to being inheritance-based in preparation for reflection infrastructure. This technique relies on the vtable's dynamic dispatch for correct evaluation, and removes the giant switch eval style of previous revisions.
|
2010-08-08 17:18:32 +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 |
|
Jonathan Turner
|
d838f7a6d4
|
Renaming of helper function char_between. Adding help to check for hitting the end of input.
|
2010-08-07 02:18:51 +00:00 |
|
Jonathan Turner
|
556e7ad916
|
Cleaned up the formatting a bit. Switched parser over to using charBetween, which significantly improves
readability of the early parsing rules.
|
2010-08-06 11:17:53 +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
|
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
|
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
|
7ac9ea7249
|
Add the ability to specify "load_module" and "use" search paths. The capability is primitive and it is currently used by chaiscript_eval to set a single path from environment variables
|
2010-03-18 22:53:52 +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 |
|
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 |
|
Jason Turner
|
d8213a4206
|
Convert from #warning to #pragma message for notification of thread safety being disabled, so support more compilers portably
|
2010-01-19 01:54:00 +00:00 |
|
Jason Turner
|
3a4421a57c
|
Fix empty array unit test by reimplementing the node->children.size() test erroneously removed in r466
|
2010-01-07 01:47:04 +00:00 |
|
Jason Turner
|
968da650b2
|
Clean up leaking #define's for iterations (n, m) that could mess up subsequently included files such as boost/signals2.hpp
|
2010-01-03 15:48:17 +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
|
70047424f9
|
Get compiling with Visual Studio 10 beta 2. Had to work around issues with conflicts between boost::function and VisualStudio's std::tr1::mem_fn (http://social.msdn.microsoft.com/Forums/en/vcprerelease/thread/e04d93ed-d686-4ef6-9939-26e34c0955eb). Also had to work around non-standard overloaded std member functions in std::map (http://msdn.microsoft.com/en-us/library/fe72hft9(VS.100).aspx)
Strongly consider rolling this back when the issues are resolved between microsoft and boost. Also, needs to be tested across all platforms.
|
2009-12-28 17:16:03 +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 |
|
Jonathan Turner
|
e5a29ede5f
|
Added 0b1010 binary format. Fixed hex and octal to allow negative ints
|
2009-12-11 14:46:12 +00:00 |
|
Jason Turner
|
0c0df2c982
|
VS 2008 related corrections.
|
2009-12-08 15:57:31 +00:00 |
|
Jason Turner
|
4457df9ff5
|
Fix NO_THREADS related issues
|
2009-12-06 05:12:02 +00:00 |
|
Jason Turner
|
e601de9d18
|
Reduce use of Param_List_Builder by providing call_function implementations for 0,1,2 arity
|
2009-12-06 01:31:58 +00:00 |
|
Jason Turner
|
37b2ac2056
|
Implement proper swap for Boxed_Value
|
2009-12-05 19:30:09 +00:00 |
|
Jason Turner
|
645cdddd70
|
Small but measurable eval performance increase (in optimized builds) by managing the number of Boxed_Values copies and assignments
|
2009-12-05 18:54:55 +00:00 |
|
Jonathan Turner
|
ac8462fb67
|
Fix up some broken sample files
|
2009-12-02 14:29:42 +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
|
e2a2c14c0d
|
Eliminate use of size_t in stl related wrappings
|
2009-12-01 02:56:02 +00:00 |
|
Jonathan Turner
|
c418644a5b
|
Fix for single-line comments stopping at semicolon.
|
2009-11-27 22:52:55 +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
|
1c6b2725b3
|
Provide some hints for dispatches with lhs (first param) that is const
|
2009-11-21 06:02:17 +00:00 |
|
Jason Turner
|
95c124ca35
|
Support better tracking of loaded modules for saving and setting of state
|
2009-11-21 05:28:00 +00:00 |
|
Jason Turner
|
1bd73884b2
|
Add documentation to the set_state get_state functions
|
2009-11-18 05:05:40 +00:00 |
|
Jason Turner
|
d3e4af433e
|
Add support for saving/restoring of chaiscript engine state.
|
2009-11-18 04:43:08 +00:00 |
|
Jason Turner
|
9f65303370
|
Handle case of const & return values (should probably be investigated a bit more)
|
2009-11-18 04:42:43 +00:00 |
|
Jason Turner
|
391eaa9e11
|
VC++ 2008 warnings cleanups
|
2009-11-15 03:26:47 +00:00 |
|
Jason Turner
|
ed11f48847
|
More robust handling of potential class object member types
|
2009-11-15 00:37:01 +00:00 |
|
Jason Turner
|
9dddb49850
|
Added support for const attribute access
|
2009-11-14 19:02:00 +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 |
|
Jonathan Turner
|
e14931f389
|
Move completely over to new operators
|
2009-11-10 14:07:51 +00:00 |
|
Jason Turner
|
f4a680a582
|
Add missing operators.hpp file
|
2009-11-10 13:27:44 +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
|
3a37ceedb7
|
Rollback to r437 for bind_first implementation. The "cleaned up" version was a no-go in some cases
|
2009-11-08 16:28:35 +00:00 |
|
Jonathan Turner
|
1bc968e788
|
Add initial unaries
|
2009-11-08 16:27:39 +00:00 |
|
Jason Turner
|
fe5a935abd
|
add is_undef functionality to boxed_value
|
2009-11-08 15:16:15 +00:00 |
|
Jason Turner
|
4e5c972e66
|
Simplify implementation of bind_first and add some detail namespacing
|
2009-11-08 14:46:44 +00:00 |
|
Jonathan Turner
|
d946cb7e9d
|
Small fix to the casting of values in boolean logical statements
|
2009-11-07 14:50:41 +00:00 |
|
Jonathan Turner
|
18bfead387
|
Move to a better operator parser, add support for most of the C++ binary operators
|
2009-11-07 14:43:12 +00:00 |
|
Jason Turner
|
4c015d7e44
|
Simplification of bootstrap_stl code resulting in slightly better engine start up performance and compile time performance
|
2009-10-21 01:48:21 +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
|
d2d752ecd4
|
Fix registration of module loading functions
|
2009-10-19 14:00:48 +00:00 |
|
Jason Turner
|
a18c701866
|
Fix type-shifting of bind_first for free function pointer types
|
2009-10-16 15:49:46 +00:00 |
|
Jason Turner
|
b1d12fdc91
|
Further updates to the new bound function support, plus general cleanup of how it is used
|
2009-10-15 15:27:16 +00:00 |
|
Jason Turner
|
24e717d532
|
Fix "bind_first" for non member functions
|
2009-10-14 22:42:45 +00:00 |
|
Jason Turner
|
1568fedebd
|
Reduce # of required versions for bound_fun and enhance it to work with non-member functions
|
2009-10-14 17:19:42 +00:00 |
|
Jonathan Turner
|
9827345213
|
Fix Id Literals so that they are keyed off an Id search. This allows us to add operator overloading on the parse side.
|
2009-10-14 13:51:35 +00:00 |
|
Jason Turner
|
480761c1f7
|
Add bound_fun helper and put it to use cleaning up the engine bootstrapping
|
2009-10-14 02:34:09 +00:00 |
|
Jonathan Turner
|
12e909d9aa
|
Add bit shifting operators
|
2009-10-13 03:35:01 +00:00 |
|
Jason Turner
|
b1e892487f
|
Enhance "is_type" to be more accurate and to work with Dynamic_Object types
|
2009-10-13 03:31:56 +00:00 |
|
Jason Turner
|
720eabcb16
|
Impliment range find functions and add unit test for contains and find.
|
2009-10-13 02:05:18 +00:00 |
|
Jason Turner
|
1fde71f3f4
|
Add type generic comparison operations "eq", "gt", and "lt" and port the "contains" operation to use it
|
2009-10-13 00:18:59 +00:00 |
|
Jonathan Turner
|
90f8b77171
|
Added .contains() to ranges
|
2009-10-11 20:02:21 +00:00 |
|
Jonathan Turner
|
315d7521a7
|
Clean up warnings. Add simple blocks.
|
2009-10-08 03:01:19 +00:00 |
|
Jonathan Turner
|
ff177b5eaf
|
Add octal support
|
2009-10-06 21:17:23 +00:00 |
|
Jonathan Turner
|
46fd7e9a58
|
Add hex value parsing support
|
2009-10-06 16:04:05 +00:00 |
|
Jason Turner
|
edd274ccce
|
Fix some more obscure warnings
|
2009-10-06 02:26:47 +00:00 |
|
Jonathan Turner
|
a5b2ec3006
|
Start code cleanups by moving chaiscript common structures into their own file.
|
2009-09-23 05:00:14 +00:00 |
|
Jason Turner
|
3bdd79a3fd
|
Correct Windows unicode build issues.
|
2009-09-22 23:03:16 +00:00 |
|
Jason Turner
|
b04e01cda7
|
Ensure that __EVAL__ is in the list of loaded files and be smarter about accessing it
|
2009-09-22 21:06:02 +00:00 |
|
Jason Turner
|
bad5384c96
|
Fix multi-file compilation issues
|
2009-09-22 20:59:10 +00:00 |
|
Jason Turner
|
443902f787
|
Reduce overhead necessary for internal_eval. Desirable due to the use of "eval" during cloning operations
|
2009-09-22 01:58:16 +00:00 |
|
Jason Turner
|
9762e15460
|
Fix some range/retro issues and update the visual studio files
|
2009-09-22 01:23:02 +00:00 |
|
Jonathan Turner
|
03746e7606
|
Add keywords for NaN and Infinity
|
2009-09-21 16:50:30 +00:00 |
|
Jason Turner
|
50eace16da
|
Allow "Module" to contain chaiscript snippets to be executed when a module is initialized. Update dynamic_object to use the new feature to clean up some of the _prelude.hpp
|
2009-09-21 03:07:01 +00:00 |
|
Jason Turner
|
8241e46680
|
Further refine how clone calls are dynamically generated, to avoid accidentally matching when we should not
|
2009-09-20 21:49:53 +00:00 |
|
Jason Turner
|
160f64e9c2
|
Enabled short hand for adding new methods to existing C++ types
|
2009-09-20 21:32:39 +00:00 |
|
Jason Turner
|
593c6c68ee
|
Port "retro" to use the new built in object typing, add unit test for retro'ing a retro
|
2009-09-20 03:50:25 +00:00 |
|
Jason Turner
|
991753a492
|
Add support for cloning of dynamic objects
|
2009-09-19 23:12:56 +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 |
|
Jonathan Turner
|
c5f837fd19
|
Added 'finally' to try/catch block
|
2009-09-19 18:12:22 +00:00 |
|
Jonathan Turner
|
7c244d25b5
|
Add support for chai objects by adding methods and attrs
|
2009-09-19 15:32:12 +00:00 |
|
Jonathan Turner
|
18fc4d419f
|
Fix to catch block handling that would have lost the scope of the boost::ref of the exception
|
2009-09-19 13:40:48 +00:00 |
|
Jonathan Turner
|
813fa055a3
|
Added guarded exception catches
|
2009-09-19 13:30:11 +00:00 |
|
Jason Turner
|
6a47846b84
|
Add runtime_error support, for throwing a normal std::exception. Also, move bootstrap for Dynamic_Object into its proper place.
|
2009-09-19 12:15:17 +00:00 |
|
Jason Turner
|
b0041217b0
|
initial checkin of dynamic object support with example usage in example.cpp
|
2009-09-19 02:36:27 +00:00 |
|
Jonathan Turner
|
b17c6b9748
|
Add support for std::exception and what()
|
2009-09-18 22:26:07 +00:00 |
|
Jonathan Turner
|
204d379176
|
Fix default cmake build to use readline and gdb. Add simple try/catch/throw exceptions
|
2009-09-18 22:04:07 +00:00 |
|
Jason Turner
|
4bdbcf30ff
|
Move std::list<> support from main.cpp into a module, stl_extra.cpp, to better allow for measuring of core compile times / performance.
|
2009-09-15 01:30:51 +00:00 |
|
Jonathan Turner
|
63de0fd33c
|
Add a couple more in-string eval unit tests to check for proper escaping
|
2009-09-13 12:53:12 +00:00 |
|
Jonathan Turner
|
5092713876
|
Add in-string eval
|
2009-09-12 14:52:46 +00:00 |
|
Jason Turner
|
f369afed77
|
Decrease compile times by 30% and runtimes by 10% by eliminating use of boost::bind during function dispatch
|
2009-09-10 03:44:42 +00:00 |
|
Jonathan Turner
|
f23f0edc70
|
Fix parser to handle shortform equations (fix bad operator parsing). Add back lines to prelude for line numbers
|
2009-09-09 14:11:03 +00:00 |
|
Jason Turner
|
daee00da95
|
Minor performance enhancement for caching function and cleanup of minor windows warning in same function.
|
2009-09-09 13:17:20 +00:00 |
|
Jason Turner
|
e2cdac0406
|
Decrease compilation time by removing "Retro" from c++ compiled and making a chaiscript version instead
|
2009-09-09 03:11:47 +00:00 |
|
Jonathan Turner
|
1bf3b1ed37
|
Couple changes for module loading in mingw
|
2009-09-08 21:22:37 +00:00 |
|
Jason Turner
|
f7b530ebae
|
Quick fix to (hopefully) module support on mingw
|
2009-09-08 19:21:11 +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 |
|
Jonathan Turner
|
cfee4c6bc1
|
Bugfix: cached the wrong boolean value. Fixed.
|
2009-09-08 02:15:41 +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 |
|
Jonathan Turner
|
7e3127549f
|
Added simple const value caching. Fix CMake to default back to debug mode
|
2009-09-07 15:48:32 +00:00 |
|
Jason Turner
|
7cc6a3cab9
|
Add support for loadable modules on POSIX systems
|
2009-09-06 23:33:03 +00:00 |
|
Jonathan Turner
|
cba5731576
|
Fixing the last of the const change issues
|
2009-09-06 02:55:39 +00:00 |
|
Jonathan Turner
|
e9539dfee2
|
BROKEN./run_unit_tests.sh ! This is to help repair unit tests broken in move to consts. Should be fixed shortly.
|
2009-09-06 02:24:46 +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
|
46cdb89921
|
Add missing chaiscript_threading.hpp
|
2009-09-05 13:10:27 +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
|
4d42d6ff33
|
Add shared objects that can be used by all threads at their root scope only
|
2009-09-03 11:42:23 +00:00 |
|
Jason Turner
|
a427d2c1a9
|
Correct function pointer casts to more correct static_cast<>()
|
2009-09-03 00:15:56 +00:00 |
|
Jason Turner
|
efb7a8d453
|
Create local thread caches of registered function objects to reduce thread contention
|
2009-09-02 02:28:38 +00:00 |
|
Jason Turner
|
6c4872eae9
|
Initial check in of multithreaded support for chaiscript
|
2009-08-31 19:50:41 +00:00 |
|
Jason Turner
|
ff639a267d
|
Shave a few cycles off by reducing copies and assignments of objects in eval
|
2009-08-30 02:24:11 +00:00 |
|
Jason Turner
|
94e4b671f3
|
Make sure to invalidate the cache when a new function name is added
|
2009-08-30 01:06:21 +00:00 |
|
Jason Turner
|
096c8aab50
|
Provide for caching of objects in the dispatch get get_object side. Also, update chaiscript_eval to not explicitly add a new stack object to each scope as it is created
|
2009-08-30 00:48:17 +00:00 |
|
Jason Turner
|
89186a86c8
|
speed up operator calls by about 10% by reducing Proxy_Function copies and such
|
2009-08-29 19:19:31 +00:00 |
|
Jason Turner
|
c8c1c65e8c
|
Add std::list support
|
2009-08-29 14:00:07 +00:00 |
|
Jonathan Turner
|
91011695f0
|
Allow simple multiline commands in arg list and container arg list
|
2009-08-26 20:34:32 +00:00 |
|
Jason Turner
|
3a951cea99
|
Extend the reserved object name registration to include some missing values such as break and return and such
|
2009-08-26 02:21:41 +00:00 |
|
Jonathan Turner
|
8620f4eaf9
|
Fix for issue 23, makes for and while loops live in their own deeper scope
|
2009-08-26 02:02:41 +00:00 |
|
Jonathan Turner
|
59ecf32f9b
|
Add Eval_Error end extents and reserved word errors
|
2009-08-25 01:10:28 +00:00 |
|
Jason Turner
|
541e453098
|
check in of reserved word handling
|
2009-08-25 00:36:02 +00:00 |
|
Jason Turner
|
0b780593a6
|
Make for better error messages when a clone fails
|
2009-08-22 13:55:06 +00:00 |
|
Jason Turner
|
2e7c5f413e
|
Cleanup get_function implementation
|
2009-08-21 22:51:12 +00:00 |
|
Jonathan Turner
|
7e5b7cbd7a
|
Switch get_function to default to not doing object lookup. Correct method eval to maintain method lambda syntax. Add unit test for method lambda
|
2009-08-21 20:05:05 +00:00 |
|
Jason Turner
|
1f011f3d5b
|
Add "use" function for loading chai files from inside of ChaiScript and fix potential memory bug with filename const char * pointers being passed around
|
2009-08-21 03:33:57 +00:00 |
|
Jason Turner
|
a136236179
|
Fix dispatch for const boost::shared_ptr<> & parameters for functions, add a test to example.cpp and fix some issues with building example.cpp
|
2009-08-20 21:35:56 +00:00 |
|
Jonathan Turner
|
8840f06053
|
Allow floating point numbers without a zero before the decimal point
|
2009-08-20 14:50:13 +00:00 |
|
Jason Turner
|
00e4de774f
|
Move "fun_helper" into detail namespace
|
2009-08-09 19:12:01 +00:00 |
|
Jason Turner
|
bc3a17b3b7
|
Port VC++ fix from last rev back to Linux
|
2009-08-09 18:42:32 +00:00 |
|
Jason Turner
|
4a57efde25
|
Correct bug with bootstrapping of Map type on windows. Also, make it easier to specify the type of a function being added at the time it is being added.
|
2009-08-09 16:49:14 +00:00 |
|
Jason Turner
|
cf94817869
|
Add missing new files from last checkin
|
2009-08-08 16:38:32 +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
|
0ff107a818
|
Rename types_match to call_match in Proxy_Function to more closely match the semantics of the call
|
2009-08-06 01:35:12 +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
|
0b789004e9
|
Make "clone" a chaiscript based operation instead of forcing the user to register a clone method.
|
2009-07-24 13:17:00 +00:00 |
|
Jason Turner
|
0d3c90a245
|
Add "type_name" function and port the "new" in prelude to use it instead of clone/clear.
|
2009-07-24 04:01:28 +00:00 |
|
Jonathan Turner
|
2f591a25a6
|
Add ltrim, rtrim, and trim
|
2009-07-23 17:35:39 +00:00 |
|
Jonathan Turner
|
4127a6ed41
|
Added 'clear'. Added 'push_back' to string. Added char. Added simple reverse
|
2009-07-23 17:01:07 +00:00 |
|
Jason Turner
|
4e412c0f6a
|
Fix compilation error for G++
|
2009-07-23 13:03:57 +00:00 |
|
Jason Turner
|
370121a9ff
|
add example.cpp to build for VC++, fix minor bug in passing of & parameters to functor<>, move bootstrap functions into bootstrap namespace and clean up function names and add "retro" support for reversing of ranges.
|
2009-07-23 04:35:15 +00:00 |
|
Jason Turner
|
00ac8113c0
|
Add additional support for boost::shared_ptr as a return type
|
2009-07-21 02:00:39 +00:00 |
|
Jonathan Turner
|
72b6647718
|
Add missing return value
|
2009-07-20 19:53:31 +00:00 |
|
Jason Turner
|
daacbaa9e0
|
Correct for warnings and errors for the VC++ port.
|
2009-07-19 03:59:58 +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
|
82bd46bb1a
|
More usage cleansups
|
2009-07-18 23:34:08 +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 |
|
Jonathan Turner
|
ac817ff33a
|
Change 'elseif' to 'else if' to better support C++ expectations
|
2009-07-17 14:16:27 +00:00 |
|
Jason Turner
|
689143aba5
|
Fix broken push_back in prelude, to correct for unit tests.
|
2009-07-16 23:53:13 +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 |
|
Jonathan Turner
|
3fc5f8e8e1
|
Guard push_back to ensure we have the push_back_ref before we call it
|
2009-07-16 20:32:33 +00:00 |
|
Jonathan Turner
|
aed493322b
|
Clean up exception story so that there is only one exception type and one thing the user needs to catch
|
2009-07-16 13:24:15 +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
|
7c7e437b10
|
Clean up unnecessary Boxed_Value copies in eval
|
2009-07-15 14:40:53 +00:00 |
|
Jonathan Turner
|
599a21d377
|
Small bugfix to float parser
|
2009-07-13 13:48:06 +00:00 |
|
Jonathan Turner
|
5ec3901396
|
Some minor source header touchups
|
2009-07-13 03:13:04 +00:00 |
|
Jason Turner
|
45fbe2028a
|
Correct registration of array[]. (Rollback to previous version) to fix broken unit tests.
|
2009-07-13 03:04:47 +00:00 |
|
Jason Turner
|
7f71c77e56
|
Add documented example usage for C++ api. To be used for website documentation purposes as well
|
2009-07-12 17:05:24 +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
|
7da81c8c11
|
Put eval init in constructor
|
2009-07-10 15:45:48 +00:00 |
|
Jonathan Turner
|
15979ecdb2
|
A couple touchups. Fixed package builder
|
2009-07-10 15:37:10 +00:00 |
|
Jonathan Turner
|
008329f36d
|
Move dispatchkit unittest out of include
|
2009-07-10 15:26:35 +00:00 |
|
Jonathan Turner
|
5c79c7cec0
|
Move dispatchkit test out of include
|
2009-07-10 15:25:14 +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
|
4a5c86f07f
|
Moving files into new locations
|
2009-07-10 15:10:21 +00:00 |
|
Jonathan Turner
|
a40c71967c
|
Move dispatch kit into new include tree
|
2009-07-10 15:06:47 +00:00 |
|