Jean Privat [Wed, 23 Apr 2014 01:46:51 +0000 (21:46 -0400)]
src: adapt tools to use `ToolContext::nit_dir` instead of `NIT_DIR`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 23 Apr 2014 01:44:44 +0000 (21:44 -0400)]
toolcontext: add nit_dir service
Use `NIT_DIR` or some heuristic to find the Nit directory.
In next commits, tools will use it.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Apr 2014 20:03:45 +0000 (16:03 -0400)]
nitls: can use `--depends` with others options.
~~~
$ nitls ../examples/hello_world.nit ../examples/calculator.nit -d
calculator (../examples/calculator.nit)
gtk (../lib/gtk.nit)
gtk3_4 (../lib/gtk3_4)
hello_world (../examples/hello_world.nit)
standard (../lib/standard)
~~~
~~~
$ nitls ../examples/hello_world.nit ../examples/calculator.nit -d -t -p
../examples/calculator.nit
`--../examples/calculator.nit
../lib/gtk.nit
`--../lib/gtk.nit
../lib/gtk3_4
|--../lib/gtk3_4/gdk_enums.nit
|--../lib/gtk3_4/gtk3_4.nit
|--../lib/gtk3_4/gtk_assistant.nit
|--../lib/gtk3_4/gtk_core.nit
|--../lib/gtk3_4/gtk_dialogs.nit
|--../lib/gtk3_4/gtk_enums.nit
`--../lib/gtk3_4/gtk_widgets_ext.nit
../examples/hello_world.nit
`--../examples/hello_world.nit
../lib/standard
|--../lib/standard/environ.nit
|--../lib/standard/exec.nit
|--../lib/standard/file.nit
|--../lib/standard/gc.nit
|--../lib/standard/kernel.nit
|--../lib/standard/math.nit
|--../lib/standard/posix.nit
|--../lib/standard/standard.nit
|--../lib/standard/stream.nit
|--../lib/standard/string.nit
|--../lib/standard/string_search.nit
|--../lib/standard/time.nit
`--../lib/standard/collection
|--../lib/standard/collection/abstract_collection.nit
|--../lib/standard/collection/array.nit
|--../lib/standard/collection/collection.nit
|--../lib/standard/collection/hash_collection.nit
|--../lib/standard/collection/list.nit
|--../lib/standard/collection/range.nit
`--../lib/standard/collection/sorter.nit
~~~
Jean Privat [Tue, 22 Apr 2014 19:53:02 +0000 (15:53 -0400)]
nitls: add option --path to force the output of paths only
Otherwise, a couple `name (filepath)` is displayed for each entry
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Apr 2014 19:22:01 +0000 (15:22 -0400)]
Merge: github_merge tool
Extraction of the github API in its own lib and rewrite of my nodejs script in pure Nit
Pull-Request: #409
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 22 Apr 2014 16:10:27 +0000 (12:10 -0400)]
tests: add github_merg
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Apr 2014 16:08:59 +0000 (12:08 -0400)]
contrib: add `github_merge` the script I use to produce merge of PR
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Apr 2014 15:43:42 +0000 (11:43 -0400)]
contrib/github_search_for_jni: update to use github_api
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Apr 2014 15:40:29 +0000 (11:40 -0400)]
lib/github_api: new lib to access the github api
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Apr 2014 15:37:46 +0000 (11:37 -0400)]
simple_json_reader: privately imports lexer&parser
So public API is easier to read.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Apr 2014 13:35:53 +0000 (09:35 -0400)]
Merge: Inkscape tools
Intro 2 tools based on Inkscape.
__svg_to_png_and_nit__ reads a SVG file and outputs 2 files:
* A single png file
* A Nit source file and class, with attributes pointing to all objects with IDs beginning with 0.
__svg_to_icons__ Generates PNG files from a SVG file. It can output the format expected by Android projects.
Pull-Request: #406
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Alexis Laferrière [Fri, 18 Apr 2014 18:16:26 +0000 (14:16 -0400)]
contrib/inkscape_tools: update to use a nested module
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 18 Apr 2014 18:18:14 +0000 (14:18 -0400)]
Merge branch 'master' into inkscape-tool
To get import of nested modules.
Jean Privat [Fri, 18 Apr 2014 17:36:53 +0000 (13:36 -0400)]
Merge: add NativeArray::length
Add and implement native methods `NativeArray::length` and `NativeArray::to_a`
The length could be available but was not for historial reasons.
`to_a` is trivial once `length` is defined.
A future series will add `NativeArray::new` and depreciate the ugly `calloc_array`.
Note: because of a bug in nitg, the compiler in `c_src` seems to return 0 on `length` instead of aborting.
Pull-Request: #405
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Fri, 18 Apr 2014 16:48:57 +0000 (12:48 -0400)]
tests: add test_native_array.nit
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 17 Apr 2014 02:20:10 +0000 (22:20 -0400)]
niti: implements `NativeArray::length`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 17 Apr 2014 02:19:35 +0000 (22:19 -0400)]
nitg: implements `NativeArray::length`
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Thu, 17 Apr 2014 17:04:49 +0000 (13:04 -0400)]
tests: add inkscape_tools to testfull.sh
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 17 Apr 2014 12:45:24 +0000 (08:45 -0400)]
contrib/inkscape_tools: add test for icons
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 17 Apr 2014 12:45:07 +0000 (08:45 -0400)]
contrib/inkscape_tools: intro the svg_to_icons tool
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 6 Apr 2014 16:30:04 +0000 (12:30 -0400)]
lib: adds support lib for svg_to_png_and_nit tool
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 6 Apr 2014 03:31:26 +0000 (23:31 -0400)]
contrib: intro the svg_to_png_and_nit project
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 17 Apr 2014 02:17:06 +0000 (22:17 -0400)]
lib: add `NativeArray::length`
Engines should be able to store the allocated size.
Unlike `NativeString` that is a char*, `NativeArray` is a special Nit
opaque structure.
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Sun, 6 Apr 2014 15:58:37 +0000 (11:58 -0400)]
lib: opts add OptionFloat
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 16 Apr 2014 17:55:17 +0000 (13:55 -0400)]
lib: fix broken assert in FStream::opens
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 15 Apr 2014 23:01:10 +0000 (19:01 -0400)]
Merge: Shoot for android
Enable control with the pointer
Compile to android
Scale view port
Pull-Request: #399
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Tue, 15 Apr 2014 20:02:44 +0000 (16:02 -0400)]
Merge: Modernize syntax
Lot of cleanup and modernization in the syntax of Nit
* depreciate old FFI syntax: `extern` without `class` and non-dotted extern notation (quad or space)
* reduce the usage of old style getters and setters (they will be disabled soon)
* remove the shortcut `=` for one-liner function
* hexadecimal literals `var x = 0x7F`
Conflicts: lib/jvm.nit
Pull-Request: #401
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Tue, 15 Apr 2014 17:20:26 +0000 (13:20 -0400)]
tests: remove `base_return_assing`
The syntax is removed
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:52:01 +0000 (09:52 -0400)]
src: remove old-style attribute from src/ (except parser)
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:51:24 +0000 (09:51 -0400)]
parser: regenerate parser files
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:50:49 +0000 (09:50 -0400)]
parser: add AHexIntExpr
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:49:52 +0000 (09:49 -0400)]
parser: split `AIntExpr` and `ADecIntExpr`
next commit will introduce AHexIntExpr
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:30:38 +0000 (09:30 -0400)]
parser: force new style FFI in syntax.
`extern class` + dotted extern call notations.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:29:28 +0000 (09:29 -0400)]
parser: disable unused `=` shortcut for functions
So simplify the grammar.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:28:41 +0000 (09:28 -0400)]
parser: allow top-level methods between class definitions
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:26:56 +0000 (09:26 -0400)]
parser: parentheses in `.as` are optional
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:26:01 +0000 (09:26 -0400)]
parser: add 'public' keyword
to reserve it :)
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 13:22:19 +0000 (09:22 -0400)]
tests: remove usage of old-style getters and setters
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Tue, 8 Apr 2014 15:05:23 +0000 (11:05 -0400)]
lib/jvm: adapt Jvm::attach_current_thread to Android
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Mar 2014 15:00:03 +0000 (11:00 -0400)]
lib/jvm: support the Android platform by desactivating unavailable features
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 16 Mar 2014 21:18:53 +0000 (17:18 -0400)]
lib/jvm: prevents string warnings on JVM
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 15 Apr 2014 12:59:55 +0000 (08:59 -0400)]
lib: remove usage of old-style getters and setters
old-style attributes are still available but getters and setters are manual.
This encourage the use of new-style attributes.
Support for old style attributes will be removed eventually.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 12:57:22 +0000 (08:57 -0400)]
syntax: remove last usages of `=` in one liner function
This optional syntax is largely unused and no so KISS.
I will drop it in a future grammar.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 12:52:43 +0000 (08:52 -0400)]
ffi: update code with last syntax
use `extern class` and dotted notation for extern call and casts.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 15 Apr 2014 12:51:26 +0000 (08:51 -0400)]
tests: update sav/shoot_logic.res
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 14 Apr 2014 20:13:20 +0000 (16:13 -0400)]
tests: add sav/shoot_android.res
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 14 Apr 2014 20:10:55 +0000 (16:10 -0400)]
shoot: use a scale factor to compute the game dimentions
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 14 Apr 2014 20:09:28 +0000 (16:09 -0400)]
shoot: add scene to sprites and use it to gather global width and height
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 14 Apr 2014 20:07:19 +0000 (16:07 -0400)]
shoot: specialize scene to add witdth and height
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 14 Apr 2014 20:16:16 +0000 (16:16 -0400)]
Merge: FFI with Java
Supports:
* Implementing Nit methods in Java
* Associating a Nit extern class to a Java type
* Callback Nit from Java code
To do next:
* Write the manual
* Support callbacks to super and casts (which also implies have static types in Java)
* Support Java code on Android
* Add more complexe examples, such as using an external .jar
Pull-Request: #396
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Alexis Laferrière [Mon, 14 Apr 2014 15:09:11 +0000 (11:09 -0400)]
lib/java: improve documentation
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 12 Apr 2014 18:32:50 +0000 (14:32 -0400)]
lib/java: intro JavaObject::new/release_global_ref
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 12 Apr 2014 16:09:02 +0000 (12:09 -0400)]
lib/jvm: rename JObject class to JavaObject
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 10 Apr 2014 16:47:35 +0000 (12:47 -0400)]
lib/jvm: change a C function to a Nit extern method
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 10 Apr 2014 14:45:26 +0000 (10:45 -0400)]
tests: adds a test for java strings
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 10 Apr 2014 14:46:30 +0000 (10:46 -0400)]
lib/java: add services to support Java strings
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Mon, 14 Apr 2014 14:43:05 +0000 (10:43 -0400)]
shoot: control player with `PointerEvent`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 14 Apr 2014 14:42:46 +0000 (10:42 -0400)]
shoot: add Player::going_target
A simple target used to control player with pointers.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 14 Apr 2014 14:26:48 +0000 (10:26 -0400)]
shoot: make android
But the game is unplayable yet without keyboard, see next patches
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 14 Apr 2014 12:57:55 +0000 (08:57 -0400)]
Merge: Correct detection of property name conflicts
Fixes #395
Pull-Request: #398
Jean Privat [Fri, 11 Apr 2014 13:07:50 +0000 (09:07 -0400)]
tests: add error_prop_name*
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 11 Apr 2014 01:56:35 +0000 (21:56 -0400)]
tests: update base_virtual_type_redef.res
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 11 Apr 2014 01:40:56 +0000 (21:40 -0400)]
modelbuilder: correctly detect property name conflicts
The tricky part is the handling of existing constructors.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 10 Apr 2014 20:41:57 +0000 (16:41 -0400)]
Merge: Qualified import
Enable `import foo::bar`
Pull-Request: #391
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 13 Mar 2014 04:10:05 +0000 (00:10 -0400)]
tests: intro tests for the FFI with Java
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Mar 2014 22:00:53 +0000 (18:00 -0400)]
nitg: support compilation of Java files to .jar
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 12 Mar 2014 21:47:30 +0000 (17:47 -0400)]
nitg: intro of the FFI with java
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 10 Apr 2014 15:13:50 +0000 (11:13 -0400)]
Merge: Clean generated parser
This series reduce the size of the generated parser.
* First, factorize generated clones (the first commit)
* Second, reduce inlining in the grammar (the other commits)
This was a tidy process because each slight modification in the grammar yields to numerous conflicts often
difficult to understand. But the results worth the pain:
Time of `nitg nitg.nit`
before: 0m10.784s
after: 0m7.956s
gain: 26%
Number of subclasses of `ReduceAction`
before: 780
after: 376
gain: 52%
Pull-Request: #388
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 10 Apr 2014 12:37:35 +0000 (08:37 -0400)]
nitg-g: use nitstack by default
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 10 Apr 2014 12:36:33 +0000 (08:36 -0400)]
Merge: Gperf fix
Since gperf was slow, better replace it with a slow to call solution at
runtime but fast to generate, it's not like we'll be generating
stacktraces often in the life cycle of a program.
Surprisingly enough, even on nitg, the stacktrace does not take long
to generate, which is a good thing.
For comparison :
~~~
$ time nitg nitg.nit --stacktrace libunwind
user 0m19.720s
$ time nitg nitg.nit --stacktrace nitstack
user 0m19.820s
~~~
Pull-Request: #387
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 10 Apr 2014 12:32:30 +0000 (08:32 -0400)]
Merge: Fix nitdbg_websocket_server
Regression tests did not catch that `nitdbg_websocket_server` was broken.
Fix that
Pull-Request: #390
Jean Privat [Wed, 9 Apr 2014 21:56:34 +0000 (17:56 -0400)]
nitunit: updade usage of get_mmodule_by_name
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 20:36:42 +0000 (16:36 -0400)]
test: test qualified importations
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 20:35:54 +0000 (16:35 -0400)]
modelbuilder: use qualified name in imports to import things
import foo::bar
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 20:35:10 +0000 (16:35 -0400)]
modelbuilder: split `search_mmodule_by_name` from `get_mmodule_by_name`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 20:34:17 +0000 (16:34 -0400)]
modelbuilder: search_module_in_paths return ModulePath
Instead of a simple String
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 20:10:57 +0000 (16:10 -0400)]
tests: add sav/nitdbg_websocket_server.res
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 20:10:30 +0000 (16:10 -0400)]
nitdbg_websocket_server: fix write
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 19:01:15 +0000 (15:01 -0400)]
modelbuilder: get_mmodule_by_name get a mgroup as context
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 18:08:07 +0000 (14:08 -0400)]
Merge: lib/socket: Bugfix
Bug introduced in pull request #377, in the read function of FFSocket, a free is called on a static variable, which provokes a warning and probably bugs at runtime.
Pull-Request: #389
Lucas Bajolet [Wed, 9 Apr 2014 17:50:11 +0000 (13:50 -0400)]
nitg: Removed references to gperf in documentation and code
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Wed, 9 Apr 2014 15:50:32 +0000 (11:50 -0400)]
nitg: Overridden gperf since it was slow to generate.
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Wed, 9 Apr 2014 15:50:22 +0000 (11:50 -0400)]
Merge: Streamable and Pattern update
Upgrade on Streamable and Pattern, they will now work with any kind of Text instead of just String.
Pull-Request: #373
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Lucas Bajolet [Tue, 8 Apr 2014 19:33:10 +0000 (15:33 -0400)]
lib/socket: Bugfix, tried to free a static variable, this provoked a warning when compiling.
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Wed, 9 Apr 2014 14:47:54 +0000 (10:47 -0400)]
parser: regenerate with changes in the grammar and file generation
Before:
~~~~
$ time nitg nitg.nit
user 0m10.784s
$ wc parser/parser.nit
29702 93153 922785
$ grep 'super ReduceAction' parser/parser.nit -c
780
~~~~
After:
~~~~
$ time nitg nitg.nit
user 0m7.956s
$ wc parser/parser.nit
10660 32841 319408
$ grep 'super ReduceAction' parser/parser.nit -c
376
~~~~
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 15:03:19 +0000 (11:03 -0400)]
parser: new nullable production `typing_o`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 15:02:48 +0000 (11:02 -0400)]
parser: new production `qclassid` to factorize `qualified? classid`
See previous commit for details.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 15:01:42 +0000 (11:01 -0400)]
parser: new production `qid` to factorize `qualified? id`
`qid` is still transformed into an simple `id` (thus the qualified is lost).
Latter the qualification should be preserved in the AST.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:59:42 +0000 (10:59 -0400)]
parser: accepts `kwredef` in front of importation clauses
OK, this is crazy.
The point is to avoid the inlining of the production `redef`.
Because `redef` is used a lot, the gain worth the crazyness.
TODO: catch the usage of `redef` and crash after parsing.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:56:29 +0000 (10:56 -0400)]
parser: remove useless production `writable2`
just accepts visibility in all versions
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:54:44 +0000 (10:54 -0400)]
parser: new nullable production `qualified_o`
Somme `qualified?` remain (yet) because of conflicts, see next commits.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:52:06 +0000 (10:52 -0400)]
parser: new nullable production `extern_code_block_o`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:51:48 +0000 (10:51 -0400)]
parser: new nullable production `annotations_o`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:39:23 +0000 (10:39 -0400)]
parser: production `annotation_withend` is nullable
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:38:04 +0000 (10:38 -0400)]
parser: production `params` is nullable
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:37:07 +0000 (10:37 -0400)]
parser: production `extern_calls` is nullable
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:33:05 +0000 (10:33 -0400)]
parser: new nullable production `string_o` to factorize `string?`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:32:15 +0000 (10:32 -0400)]
parser: new nullable production `kwend_o` to factorize `kwend?`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:31:14 +0000 (10:31 -0400)]
parser: production `formaldefs` is nullable
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 9 Apr 2014 14:30:52 +0000 (10:30 -0400)]
parser: production `implicit_main_class` is nullable
Signed-off-by: Jean Privat <jean@pryen.org>