Commit Graph
647 Commits
Author SHA1 Message Date
Bob Nystrom ddd20c687e Merge branch 'master' into MarcoLizza-8_bit_strings_tests 2015-02-04 20:25:12 -08:00
Bob Nystrom 878be6fb6b Clean up wrenStringFind() a bit. 2015-02-04 20:23:50 -08:00
Bob Nystrom ba4760331e Merge branch 'replacing_strstr' of git://github.com/MarcoLizza/wren into MarcoLizza-replacing_strstr 2015-02-04 17:56:29 -08:00
Bob Nystrom aa9cfffb34 Keep code within 80 columns. 2015-02-04 08:15:35 -08:00
Bob Nystrom 8f313bf4ec Merge branch 'fixing_string_concatenation' of git://github.com/MarcoLizza/wren into MarcoLizza-fixing_string_concatenation 2015-02-04 08:12:50 -08:00
Bob Nystrom ef84995598 Merge branch '8_bit_strings_tests' of git://github.com/MarcoLizza/wren into MarcoLizza-8_bit_strings_tests 2015-02-04 06:59:57 -08:00
Bob Nystrom ed534b8165 Merge pull request #159 from MarcoLizza/null_char_escape
Adding '\0' escape sequence for null characters.
2015-02-04 06:57:42 -08:00
Bob Nystrom 6f26f542ea Merge pull request #163 from MarcoLizza/memcpy_for_strings
Getting rid of "strcpy()/strncpy()" in favour of "memcpy()".
2015-02-04 06:57:17 -08:00
Bob Nystrom 74289d8e7f Merge pull request #165 from MarcoLizza/gcc_constant_warning
Getting rid of constant unsigned error when compiling for C++ on GCC.
2015-02-04 06:55:44 -08:00
Marco Lizza 8af1a787e2 Getting rid of constant unsigned error when compiling for C++ on GCC. 2015-02-04 13:59:53 +01:00
Marco Lizza d73b19967d Adding 8-bit strings test cases. 2015-02-04 13:58:16 +01:00
Marco Lizza 096e5cf33c Fixing empty search string corner case. 2015-02-04 13:53:59 +01:00
Marco Lizza 4d1e0833fb Getting rid of "strcpy()/strncpy()" in favour of "memcpy()". 2015-02-04 13:51:54 +01:00
Marco Lizza d3ca27fb9a Changing 'wrenStringConcat()' to support null-containing strings. 2015-02-04 13:44:39 +01:00
Marco Lizza 875ee9e55a Replacing 'strstr()' with 'wrenStringFind()' to support 8-bit strings. Internally the Boyer-Moore-Horspool algorithm is used. 2015-02-04 13:38:15 +01:00
Marco Lizza 6997b9475d Adding '\0' escape sequence for null characters. 2015-02-04 13:25:25 +01:00
Bob Nystrom abc43f18bc Merge branch 'master' into shared-lib-makefile 2015-02-01 21:47:43 -08:00
Bob Nystrom 9917c16876 Fix un-Nan-tagging mode. Thanks, Michel Hermier! 2015-02-01 15:26:33 -08:00
Bob Nystrom 593e5c8b35 Clean up how flex arrays are allocated. 2015-02-01 15:12:37 -08:00
Bob Nystrom 98df1b2bd1 Add cast. 2015-01-31 10:54:27 -08:00
Bob Nystrom 970093299a Merge branch 'symbol_table_optimization' of git://github.com/MarcoLizza/wren into MarcoLizza-symbol_table_optimization 2015-01-31 10:49:41 -08:00
Marco Lizza 87b9fdd620 Using 'memcmp' in place of 'strncmp'. 2015-01-30 09:24:10 +01:00
Marco Lizza a54bde7294 Fixing style typo. 2015-01-30 09:23:30 +01:00
Bob Nystrom 8e25aa646e Remove unneeded conversion. Fix #148. 2015-01-29 20:44:46 -08:00
Marco Lizza 23cc8a5384 Fixed debug symbols dump. 2015-01-29 17:08:05 +01:00
Marco Lizza 5143b0707d Keeping trace of symbols length in the symbol table. 2015-01-29 16:54:21 +01:00
Bob Nystrom 3bed04e0b9 Support clang/OS X shared libraries in the Makefile. 2015-01-28 19:50:53 -08:00
Bob Nystrom f10058a704 Merge branch 'master' of https://github.com/munificent/wren 2015-01-28 19:19:19 -08:00
Bob Nystrom 0aa4d7c2bd Fix crash when doing a lookup on an empty map. 2015-01-28 19:19:04 -08:00
Bob Nystrom 81dd7a7412 Merge pull request #143 from MarcoLizza/dropped_bitfields_usage
Bitfields usage
2015-01-27 07:06:18 -08:00
Peter Reijnders 2f97ef57d3 Change Makefile to differentiate between static and shared library
Previously, just the static libraries (libwren*.a) were created. In the Makefile documentation these were mentioned in the comments as shared.
Now both variants will be created.
2015-01-27 15:05:53 +01:00
Marco Lizza a2c1ee5c25 Using a single boolean in place of a bitwise masking. 2015-01-27 14:13:26 +01:00
Marco Lizza 6f9b10cde8 Removing bitfields usage from 'Obj' struct. 2015-01-27 14:09:32 +01:00
Bob Nystrom 699b453805 Fix ambiguous sequence point in dup. 2015-01-26 21:23:54 -08:00
Bob Nystrom b93ad5fae4 Merge branch 'range-equality' of git://github.com/gsmaverick/wren into gsmaverick-range-equality 2015-01-26 07:01:15 -08:00
Gavin Schulz 8b7c16eebd Strings and ranges should rely on the object definition of equality. 2015-01-25 23:28:37 -08:00
Bob Nystrom ed8e595f54 Get rid of bytecodes for list literals.
Just compile them to:

new List
.add(...)
.add(...)
...

Gets rid of some code in the interpreter loop, which is always good.
Also addresses the old limitation where a list literal could only have
255 elements.
2015-01-25 22:49:30 -08:00
Bob Nystrom a9bd864c6b More docs for maps. 2015-01-25 21:39:22 -08:00
Gavin Schulz f482a53d0e Define equality on ranges. 2015-01-25 19:50:54 -08:00
Bob Nystrom 44db50e7ef Don't rely on fallthrough. 2015-01-25 17:51:50 -08:00
Bob Nystrom 41d9ba9b3d Merge branch 'hex-literals' of git://github.com/gsmaverick/wren into gsmaverick-hex-literals 2015-01-25 17:49:05 -08:00
Bob Nystrom 4579171afa Add remove() to Map. 2015-01-25 17:42:36 -08:00
Gavin Schulz 0ad7a7d9ff Code review changes. 2015-01-25 13:02:44 -08:00
Bob Nystrom 0e6a90443e Add containsKey() to Map, and validate key types. 2015-01-25 12:39:19 -08:00
Bob Nystrom 3061bdde7f Start documenting maps and work on some other docs a bit. 2015-01-25 11:08:13 -08:00
Bob Nystrom 492c730e6f Key and value iteration for maps. Also toString. 2015-01-25 10:27:38 -08:00
Bob Nystrom 251b623c65 Map "clear" method. 2015-01-25 08:39:44 -08:00
Bob Nystrom e740a4c95a Map literals! 2015-01-24 23:21:50 -08:00
Bob Nystrom abe80e6d4b Initial map implementation.
Still lots of methods missing and clean up and tests to do.
Also still no literal syntax.

But the core hash table code is there and working. The supported
key types are all, uh, supported.
2015-01-24 22:27:35 -08:00
Gavin Schulz 12102b19ef Adds support for hexadecimal literals. 2015-01-24 22:07:46 -08:00