Jason Turner
13fb930676
First part of system introspection for objs and funcs added
2012-05-18 15:31:42 -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
8e24eef265
Tweaks to clang support and fix for clang/module support
2012-05-15 13:56:59 -06:00
Jason Turner
286b130f47
Merge branch 'master' into 2011-09-09-CxScript
...
Conflicts:
CMakeLists.txt
include/chaiscript/dispatchkit/boxed_number.hpp
include/chaiscript/language/chaiscript_engine.hpp
2012-05-14 10:08:04 -06:00
Jason Turner
13f98fa8ce
Move "use" function to be public
2012-01-30 11:26:46 -07: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
52d9e1e871
Remove := operator and fix & usage.
2011-09-24 15:06:31 -06:00
Jason Turner
e3350fe55f
Merge branch '2011-09-09-CxScript' of https://github.com/ChaiScript/ChaiScript into 2011-09-09-CxScript
2011-09-24 11:55:36 -06:00
Jonathan Turner
ac4bb95dfb
Rename var->auto.
2011-09-24 11:50:17 -06:00
Jason Turner
535adce298
Remove exception specifications in favor of noexcept keyword
2011-09-21 12:22:52 -06:00
Jason Turner
12bd5b0af5
Boost eradicated from ChaiScript
2011-09-21 08:36:46 -06:00
Jason Turner
194001f9a1
Remove boost::any requirement by providing our own implementation
2011-09-11 19:51:37 -06:00
Jason Turner
aa402fdfde
swap boost::reference_wrapper for std::reference_wrapper
2011-09-10 10:52:59 -06:00
Jason Turner
afa96ecbf9
Begin port to C++11
2011-09-10 06:55:27 -06:00
Jason Turner
a386142fa6
Get chaiscript compiling with -pedantic. Closes issue #9
2011-09-09 13:40:50 -06:00
Jason Turner
bb0edcb62a
Add exception_specification and unittests for it. #6
2011-06-16 10:14:52 -06: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
8dec35ba19
Merge branch '2011-03-15-DocumentationUpdates'
...
Conflicts:
include/chaiscript/language/chaiscript_engine.hpp
2011-03-29 20:24:17 -06:00
Jason Turner
bbe89e61bc
elimination of unused / outdated code and documentation cleanups.
2011-03-26 22:42:11 -06:00
Jason Turner
92c836c58a
Simplify mutex code by providing stubs that are do nothing during
...
CHAISCRIPT_NO_THREADS builds.
2011-03-25 22:49:17 -06:00
Jason Turner
58e5df0a9a
Even more reorganization of namespaces to help with documentation and
...
clarity.
2011-03-25 15:42:18 -06:00
Jason Turner
854737ea25
Fix compile time error for non-posix, non-win32 platforms.
2011-03-25 10:43:17 -06:00
Jason Turner
cd8bead54a
Further namespace reorganization and cleanup to limit to the user the
...
most important aspect of the API and make documenation easier.
2011-03-24 09:23:05 -06:00
Jason Turner
637164e457
Move around some namespaces for documentation purposes.
...
Fix problems with building on clang 2.8.
Remove unneeded function for get_engine() and fix functor<> calls that take a Boxed_Value
2011-03-15 17:35:14 -06:00
Jason Turner
9dd9ffec46
Update copyright information for 2011
2011-03-15 09:42:33 -06:00
Jason Turner
0b97fcb4df
Add better namespaces to make documentation easier to handle
2011-03-05 22:50:38 -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
Jason Turner
80f576a2f3
Reflection and introspection updates for task #85
2010-12-29 17:58:56 +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
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
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
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
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
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
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
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
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
799b3ef388
Update copyright for 2010
2010-05-15 22:48:54 +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
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
fbf8f53e04
Add Type_Info type and add *_type objects at time of type registration.
2009-11-21 22:47:44 +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
cca477dae6
Only share const globals between threads. Require all globals to be const.
2009-11-11 05:47:54 +00:00
Jason Turner
d2d752ecd4
Fix registration of module loading functions
2009-10-19 14:00:48 +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
480761c1f7
Add bound_fun helper and put it to use cleaning up the engine bootstrapping
2009-10-14 02:34:09 +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
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
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
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
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
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
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
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
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
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
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
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
Jonathan Turner
72b6647718
Add missing return value
2009-07-20 19:53:31 +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
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
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
7da81c8c11
Put eval init in constructor
2009-07-10 15:45:48 +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