nit.git
9 years agotoolcontext: add `bash_completion` generation option for nit tools.
Alexandre Terrasa [Wed, 23 Jul 2014 16:28:21 +0000 (12:28 -0400)]
toolcontext: add `bash_completion` generation option for nit tools.

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agotemplate: add `Template::addn` service
Alexandre Terrasa [Tue, 15 Jul 2014 19:17:24 +0000 (15:17 -0400)]
template: add `Template::addn` service

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agotoolcontext: provide option `set-dummy-tool` used to fix the `toolname` and `version...
Alexandre Terrasa [Wed, 23 Jul 2014 16:27:28 +0000 (12:27 -0400)]
toolcontext: provide option `set-dummy-tool` used to fix the `toolname` and `version` services so they return respectively "DUMMY_TOOL" and "DUMMY_VERSION".

Useful for testing.

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: tests: move the check of exec.skip to detect compilation error
Jean Privat [Fri, 11 Jul 2014 11:15:04 +0000 (07:15 -0400)]
Merge: tests: move the check of exec.skip to detect compilation error

Pull-Request: #567
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: String: Added four new methods to string.nit
Jean Privat [Fri, 11 Jul 2014 11:14:23 +0000 (07:14 -0400)]
Merge: String: Added four new methods to string.nit

Four new methods have been added to abstract class Text : is_upper, is_lower, to_snake_case, to_camel_case. The latter two relies on the two others in their implementation. Converting case may be useful for code generation, especially when wrapping extern classes in order to conform to snake case nit standard.

Pull-Request: #549
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agolib/standard: Added to_snake_case and to_camel_case to string.nit
Frédéric Vachon [Fri, 11 Jul 2014 04:17:47 +0000 (00:17 -0400)]
lib/standard: Added to_snake_case and to_camel_case to string.nit

Signed-off-by: Frédéric Vachon <fredvac@gmail.com>

9 years agolib/standard: Added is_upper and is_lower to string.nit
Frédéric Vachon [Fri, 11 Jul 2014 04:16:34 +0000 (00:16 -0400)]
lib/standard: Added is_upper and is_lower to string.nit

Signed-off-by: Frédéric Vachon <fredvac@gmail.com>

9 years agotests: move the check of exec.skip to detect compilation error
Jean Privat [Fri, 11 Jul 2014 03:49:30 +0000 (23:49 -0400)]
tests: move the check of exec.skip to detect compilation error

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge: Bundle: Nit API wrapping Bundle class
Jean Privat [Thu, 10 Jul 2014 19:02:33 +0000 (15:02 -0400)]
Merge: Bundle: Nit API wrapping Bundle class

The Bundle class is an Android API custom mapping class. It maps `String` to various value types. This class is used by a lot of android callbacks and classes in general. It is mainly used to communicate data between application entities.

Required by the `Intent` API

Signed-off-by: Frédéric Vachon <fredvac@gmail.com>

Pull-Request: #507
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>

9 years agolib/android: Added simple_android as UNDEFINED in sav/nitg-sg
Frédéric Vachon [Thu, 10 Jul 2014 18:47:08 +0000 (14:47 -0400)]
lib/android: Added simple_android as UNDEFINED in sav/nitg-sg

Signed-off-by: Frédéric Vachon <fredvac@Pratchett.(none)>

9 years agoMerge: Android assets, resources, and audio
Jean Privat [Thu, 10 Jul 2014 16:51:46 +0000 (12:51 -0400)]
Merge: Android assets, resources, and audio

Android assets and resources Management API, plus audio management and some java io for advanced purposes. The Audio API can use the assets and resources. Audio, assets and resources can use java io.

The assets and resources API introduces a "resource_manager" and an "asset_manager" in the "App" that can be used to retrieve files or values from both resources or assets folder.

The audio API introduces Sound class representing a sound that can be play by a SoundPool or a MediaPlayer. The SoundPool is designed for playing small sound and can play different streams simultaneously and the MediaPlayer is prefered for long sounds or musics and can't play sounds simultaneously. Also the API provides 4 methods in "App" to get a sound from assets or from resources, and from a MediaPlayer or a SoundPool.

The java io part of this pull request is needed for some advanced use and is already improved by @xymus to help managing the Bitmaps.

Some classes are still only a wrapper to the Java class, this may be improved in a future version

Also modifying android_platform so the user can add his own resources in the android project without compiling it a first time. If there is a res folder in the 'nit part' of the project, it will rewrite the one generated by default by android. When the user adds it's own resources, he needs to create at least a "res/values/strings.xml" file where he needs to put a string resource with the name "app_name" and the value he wants.

The tests are implemented in the mnit_simple example application

Pull-Request: #543
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoMerge: precedence and other things to nitcc
Jean Privat [Thu, 10 Jul 2014 14:52:26 +0000 (10:52 -0400)]
Merge: precedence and other things to nitcc

A lot of small things.
The best part is the introduction of syntactic precedence.

Pull-Request: #555
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agotests: update sav/nitcc_parser_gen.res
Jean Privat [Wed, 9 Jul 2014 20:26:09 +0000 (16:26 -0400)]
tests: update sav/nitcc_parser_gen.res

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: add prerecence in the README
Jean Privat [Wed, 9 Jul 2014 15:37:59 +0000 (11:37 -0400)]
nitcc: add prerecence in the README

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: update examples to use precedence
Jean Privat [Wed, 9 Jul 2014 15:36:40 +0000 (11:36 -0400)]
nitcc: update examples to use precedence

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc/tests: some update of error messages
Jean Privat [Wed, 9 Jul 2014 15:23:38 +0000 (11:23 -0400)]
nitcc/tests: some update of error messages

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc/tests: add re.sablecc to test precedences
Jean Privat [Wed, 9 Jul 2014 15:20:55 +0000 (11:20 -0400)]
nitcc/tests: add re.sablecc to test precedences

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: add precedence on the grammar
Jean Privat [Wed, 9 Jul 2014 15:07:23 +0000 (11:07 -0400)]
nitcc: add precedence on the grammar

This use a special syntax where alternatives ar grouped in classes of
precedences that goes from the most priority to the least priority.

Those classes starts with the keyword `Left`, `Right` or `Unary` and
groups the alternatives that follows.

eg:

~~~
e =
{int:} int |
{par:} '(' e ')'
Unary
{neg:} '-' e
Right
{pow:} e '^' e
Left
{mul:} e '*' e |
{div:} e '/' e
Left
{add:} e '+' e |
{sub:} e '-' e ;
~~~

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: add Alternative::phony for those in the AST but not in the automaton
Jean Privat [Wed, 9 Jul 2014 13:56:30 +0000 (09:56 -0400)]
nitcc: add Alternative::phony for those in the AST but not in the automaton

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: does not crash if a production has no alternatives
Jean Privat [Wed, 9 Jul 2014 13:55:30 +0000 (09:55 -0400)]
nitcc: does not crash if a production has no alternatives

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: Accept special token End, but implement it as an epsilon
Jean Privat [Tue, 8 Jul 2014 20:11:03 +0000 (16:11 -0400)]
nitcc: Accept special token End, but implement it as an epsilon

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agofixup mnit apps: add metatada files suitable for FDroid
Jean Privat [Thu, 10 Jul 2014 14:05:57 +0000 (10:05 -0400)]
fixup mnit apps: add metatada files suitable for FDroid

one metadata was malformed

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge: mnit apps: add metatada files suitable for FDroid
Jean Privat [Thu, 10 Jul 2014 13:54:39 +0000 (09:54 -0400)]
Merge: mnit apps: add metatada files suitable for FDroid

So people can improve and update them.
See https://f-droid.org/manual/fdroid.html#Metadata for details.

Pull-Request: #556
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: lib/curses: update documentation
Jean Privat [Thu, 10 Jul 2014 13:41:28 +0000 (09:41 -0400)]
Merge: lib/curses: update documentation

Based on, and closes #230

Pull-Request: #557
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoandroid: added simple_android as UNDEFINED in sav/nitg-g, nitg-sg
Romain Chanoir [Wed, 9 Jul 2014 22:45:49 +0000 (18:45 -0400)]
android: added simple_android as UNDEFINED in sav/nitg-g, nitg-sg

Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>

9 years agolib/curses: update documentation
Jean Privat [Wed, 9 Jul 2014 21:05:55 +0000 (17:05 -0400)]
lib/curses: update documentation

Based on and closes #230

Signed-off-by: Jean Privat <jean@pryen.org>
Signed-off-by: Geoffrey Hecht <geoffrey.hecht@gmail.com>

9 years agoMerge: Message Passing Interface (MPI) in Nit and partial C language module
Jean Privat [Wed, 9 Jul 2014 20:58:10 +0000 (16:58 -0400)]
Merge: Message Passing Interface (MPI) in Nit and partial C language module

mpi.nit brings parallel programming to Nit using Message Passing Interface with OpenMPI. Will be used to implement a distributed tester.

c.nit offers low-level structures for performance critical code. More structure and services could be added as needed.

Warning: Does not yet pass all tests on nitg-e, will need to solve the "No provided declaration" error on extern classes with virtual types. I'll update this PR to solve this soon.

Pull-Request: #548
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agomnit apps: add metatada files suitable for FDroid
Jean Privat [Wed, 9 Jul 2014 20:47:36 +0000 (16:47 -0400)]
mnit apps: add metatada files suitable for FDroid

So people can improve and update them.
See https://f-droid.org/manual/fdroid.html#Metadata for details.

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoModelBuilder modifications for android resources
Romain Chanoir [Tue, 8 Jul 2014 01:32:56 +0000 (21:32 -0400)]
ModelBuilder modifications for android resources

Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>

9 years agoAdding the support of the res folder for android applications
Romain Chanoir [Tue, 1 Jul 2014 19:18:00 +0000 (15:18 -0400)]
Adding the support of the res folder for android applications

Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>

9 years agomnit_simple sound and resource testing
Romain Chanoir [Fri, 27 Jun 2014 20:21:29 +0000 (16:21 -0400)]
mnit_simple sound and resource testing

Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>

9 years agoIntroduction of java io API, used by android audio and resources
Romain Chanoir [Sun, 22 Jun 2014 18:29:01 +0000 (14:29 -0400)]
Introduction of java io API, used by android audio and resources

Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>

9 years agoIntroduction of the android audio API, needs android resources
Romain Chanoir [Sun, 22 Jun 2014 18:28:36 +0000 (14:28 -0400)]
Introduction of the android audio API, needs android resources

Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>

9 years agoIntroduction of android assets and resources management API
Romain Chanoir [Sun, 22 Jun 2014 18:28:13 +0000 (14:28 -0400)]
Introduction of android assets and resources management API

Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>

9 years agoMerge: trees: add `is_empty`, `has_key` and `length` methods to BinTree
Jean Privat [Tue, 8 Jul 2014 20:13:21 +0000 (16:13 -0400)]
Merge: trees: add `is_empty`, `has_key` and `length` methods to BinTree

Pull-Request: #470
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agonitcc: implements complex minus with except
Jean Privat [Tue, 8 Jul 2014 19:35:24 +0000 (15:35 -0400)]
nitcc: implements complex minus with except

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: promote `except` to Automaton
Jean Privat [Tue, 8 Jul 2014 19:28:10 +0000 (15:28 -0400)]
nitcc: promote `except` to Automaton

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: add Automaton::trim to remove useless states
Jean Privat [Tue, 8 Jul 2014 19:27:36 +0000 (15:27 -0400)]
nitcc: add Automaton::trim to remove useless states

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: do not use object_id in Automaton::to_dot
Jean Privat [Tue, 8 Jul 2014 18:36:27 +0000 (14:36 -0400)]
nitcc: do not use object_id in Automaton::to_dot

So diffing dot files is possible

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotests: add test for module C
Alexis Laferrière [Mon, 7 Jul 2014 19:01:44 +0000 (15:01 -0400)]
tests: add test for module C

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoexamples: add README and example host file to mpi example
Alexis Laferrière [Sat, 5 Jul 2014 15:22:27 +0000 (11:22 -0400)]
examples: add README and example host file to mpi example

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoexamples: add a basic usage of mpi
Alexis Laferrière [Tue, 1 Jul 2014 19:12:37 +0000 (15:12 -0400)]
examples: add a basic usage of mpi

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agolib: intro the mpi module
Alexis Laferrière [Tue, 1 Jul 2014 19:11:33 +0000 (15:11 -0400)]
lib: intro the mpi module

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agonitcc: tests various literal strings
Jean Privat [Tue, 8 Jul 2014 16:33:18 +0000 (12:33 -0400)]
nitcc: tests various literal strings

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: accepts literal hexadecimal chars (ex `#x0A`)
Jean Privat [Tue, 8 Jul 2014 16:32:21 +0000 (12:32 -0400)]
nitcc: accepts literal hexadecimal chars (ex `#x0A`)

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotrees: add `iterator` method to BinTree
Alexandre Terrasa [Tue, 8 Jul 2014 15:33:45 +0000 (11:33 -0400)]
trees: add `iterator` method to BinTree

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agonitcc: accept but ignore the Tree part
Jean Privat [Tue, 8 Jul 2014 14:42:09 +0000 (10:42 -0400)]
nitcc: accept but ignore the Tree part

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: ignore `\r` in grammars (to be compatible with mac or windows format)
Jean Privat [Tue, 8 Jul 2014 14:24:46 +0000 (10:24 -0400)]
nitcc: ignore `\r` in grammars (to be compatible with mac or windows format)

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: escape also `<` and `>` in dot
Jean Privat [Tue, 8 Jul 2014 14:19:45 +0000 (10:19 -0400)]
nitcc: escape also `<` and `>` in dot

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge: Clear the Android project folder before generating files
Jean Privat [Tue, 8 Jul 2014 01:12:55 +0000 (21:12 -0400)]
Merge: Clear the Android project folder before generating files

Should solve a problem encountered in #507 where two different Nit projects were compiled into the same Android project.

Pull-Request: #550
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agoMerge: nitdoc: fix assets url in makefile
Jean Privat [Tue, 8 Jul 2014 00:29:04 +0000 (20:29 -0400)]
Merge: nitdoc: fix assets url in makefile

Should fix #551

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

Pull-Request: #553
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agoMerge: niti: Adapted bin_and/or/xor for Int in niti.
Jean Privat [Mon, 7 Jul 2014 22:10:37 +0000 (18:10 -0400)]
Merge: niti: Adapted bin_and/or/xor for Int in niti.

Just added a few methods to niti that weren't implemented yet.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

Pull-Request: #552
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoandroid: delete the Android project folder prior to generating code
Alexis Laferrière [Mon, 7 Jul 2014 16:15:18 +0000 (12:15 -0400)]
android: delete the Android project folder prior to generating code

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoandroid: generate Android project in a subdirectory of .nit_compile
Alexis Laferrière [Mon, 7 Jul 2014 16:14:41 +0000 (12:14 -0400)]
android: generate Android project in a subdirectory of .nit_compile

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agolib: intro String::rmdir
Alexis Laferrière [Mon, 7 Jul 2014 16:14:10 +0000 (12:14 -0400)]
lib: intro String::rmdir

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoMerge: pep8analysis: use Google Analytics asynchronously
Jean Privat [Mon, 7 Jul 2014 19:38:00 +0000 (15:38 -0400)]
Merge: pep8analysis: use Google Analytics asynchronously

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

Pull-Request: #547
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agolib: intro the c module
Alexis Laferrière [Tue, 1 Jul 2014 19:17:52 +0000 (15:17 -0400)]
lib: intro the c module

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agonitdoc: fix assets url in makefile
Alexandre Terrasa [Mon, 7 Jul 2014 18:06:24 +0000 (14:06 -0400)]
nitdoc: fix assets url in makefile

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoniti: Adapted bin_and/or/xor for Int in niti.
Lucas Bajolet [Mon, 7 Jul 2014 17:33:42 +0000 (13:33 -0400)]
niti: Adapted bin_and/or/xor for Int in niti.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agoversion 0.6.6 v0.6.6
Jean Privat [Mon, 7 Jul 2014 17:24:45 +0000 (13:24 -0400)]
version 0.6.6

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge: Refuse null in superstrings
Jean Privat [Thu, 3 Jul 2014 19:13:24 +0000 (15:13 -0400)]
Merge: Refuse null in superstrings

Fixes #540

Pull-Request: #542
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoMerge: Fix cached
Jean Privat [Thu, 3 Jul 2014 16:56:56 +0000 (12:56 -0400)]
Merge: Fix cached

Only abstract and concrete classes can have cached functions

fixes #544

Pull-Request: #545
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agolib/serialization: accept Text as input
Alexis Laferrière [Thu, 3 Jul 2014 00:08:01 +0000 (20:08 -0400)]
lib/serialization: accept Text as input

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agolib: NativeString is an extern class (and not a special case)
Alexis Laferrière [Wed, 2 Jul 2014 21:29:16 +0000 (17:29 -0400)]
lib: NativeString is an extern class (and not a special case)

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoupdate code to comply with new superstring policy
Jean Privat [Thu, 3 Jul 2014 01:47:32 +0000 (21:47 -0400)]
update code to comply with new superstring policy

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotests: add error paths for base_at_cached
Jean Privat [Thu, 3 Jul 2014 01:27:09 +0000 (21:27 -0400)]
tests: add error paths for base_at_cached

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agocached: only abstract and concrete classes can have cached functions
Jean Privat [Thu, 3 Jul 2014 01:26:25 +0000 (21:26 -0400)]
cached: only abstract and concrete classes can have cached functions

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge: nitdoc_next
Jean Privat [Wed, 2 Jul 2014 21:07:20 +0000 (17:07 -0400)]
Merge: nitdoc_next

Some improvments on Nitdoc.

* better handling of projects in namespaces
* page for each MGroup/MProject
* page for each MProperty
* better display of concerns tree + ranking stub
* reviewed presentation for M*Def
* reviewed presentation for page headers
* "all classes" sidebar on MModule pages
* fix menu height and responsive features on menu
* general cleaning

Beta can be found [here for stdlib](http://gresil.org/jenkins/job/CI-nitdoc/ws/doc/stdlib/index.html) and [here for nitc](http://gresil.org/jenkins/job/CI-nitdoc/ws/doc/nitc/index.html).

Fixes: #400, #485 and #534.

Pull-Request: #537
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agoMerge: Online IDE
Jean Privat [Wed, 2 Jul 2014 19:55:59 +0000 (15:55 -0400)]
Merge: Online IDE

Added the online IDE in contrib.

Pull-Request: #536
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agotests: test new policy in test_superstring
Jean Privat [Wed, 2 Jul 2014 17:11:15 +0000 (13:11 -0400)]
tests: test new policy in test_superstring

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotyping: refuse a null value in superstrings
Jean Privat [Wed, 2 Jul 2014 17:09:07 +0000 (13:09 -0400)]
typing: refuse a null value in superstrings

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotrees: add `has_key` method to BinTree
Alexandre Terrasa [Wed, 2 Jul 2014 16:43:12 +0000 (12:43 -0400)]
trees: add `has_key` method to BinTree

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agotrees: add `is_empty` method to BinTree
Alexandre Terrasa [Wed, 2 Jul 2014 16:42:54 +0000 (12:42 -0400)]
trees: add `is_empty` method to BinTree

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agotrees: add `length` method to BinTree
Alexandre Terrasa [Wed, 2 Jul 2014 16:42:33 +0000 (12:42 -0400)]
trees: add `length` method to BinTree

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agonitdoc: avoid super-strings with null value in NitdocPage::tpl_graph
Alexandre Terrasa [Wed, 2 Jul 2014 16:18:24 +0000 (12:18 -0400)]
nitdoc: avoid super-strings with null value in NitdocPage::tpl_graph

Quick fix for #540.

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoonline_ide: make use `--semi-global` instead of global
Jean Privat [Wed, 2 Jul 2014 16:01:42 +0000 (12:01 -0400)]
online_ide: make use `--semi-global` instead of global

The size to the .pexe shrinks from 15Mo to 3Mo

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoonline_ide: make can construct www/
Jean Privat [Wed, 2 Jul 2014 16:00:36 +0000 (12:00 -0400)]
online_ide: make can construct www/

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoUpdated NOTICE for the online IDE contrib.
Djomanix [Mon, 30 Jun 2014 19:33:15 +0000 (15:33 -0400)]
Updated NOTICE for the online IDE contrib.

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agoAdded pnacl manifest.
Djomanix [Fri, 27 Jun 2014 19:59:21 +0000 (15:59 -0400)]
Added pnacl manifest.

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agoAdded JS files.
Djomanix [Fri, 27 Jun 2014 19:59:08 +0000 (15:59 -0400)]
Added JS files.

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agoAdded index and favicon.
Djomanix [Fri, 27 Jun 2014 19:58:57 +0000 (15:58 -0400)]
Added index and favicon.

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agoAdded CSS files.
Djomanix [Fri, 27 Jun 2014 19:58:41 +0000 (15:58 -0400)]
Added CSS files.

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agoMerge: Enable dummy executions of mnit applications
Jean Privat [Wed, 2 Jul 2014 06:04:51 +0000 (02:04 -0400)]
Merge: Enable dummy executions of mnit applications

A dummy execution need a stream of input events and a dummy display that is not connected to a physical screen.

`lib/mnit/mnit_injected_events.nit` gives the injection of pseudo-events read from a file.
It can be used, by mixin-refinement, with any existing mnit programs.

Eg. to have a replay of a game, just compile with `-m` and run with some environment variables
~~~
$ cd examples/shoot
$ ../../bin/nitc -o bin/shoot src/shoot_linux.nit -m ../../lib/mnit/mnit_injected_input.nit
$ MNIT_SRAND=0 MNIT_READ_INPUT=../../tests/shoot_null.inputs bin/shoot
~~~

`lib/mnit/mnit_null.nit` gives a new dummy target-platform with no display.
It must be used instead of `mnit_linux` and `mnit_android`.

Eg. for the same run, but without display ; note that the main module is `shoot.nit` instead of `shoot_linux.nit`
~~~
$ cd examples/shoot
$ ../../bin/nitc -o bin/shoot src/shoot.nit -m ../../lib/mnit/mnit_null.nit
$ MNIT_SRAND=0 MNIT_READ_INPUT=../../tests/shoot_null.inputs bin/shoot
~~~

All this is mainly a proof of concept, and not that useful, except maybe for testing, it is why tests.sh has be extended to control the run of a dummy `shoot` game.

Pull-Request: #509
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agotests: update mnit
Jean Privat [Wed, 2 Jul 2014 05:56:43 +0000 (01:56 -0400)]
tests: update mnit

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge master to resolve conflict in tests not present yet
Jean Privat [Wed, 2 Jul 2014 05:54:26 +0000 (01:54 -0400)]
Merge master to resolve conflict in tests not present yet

9 years agoMerge: String api
Jean Privat [Wed, 2 Jul 2014 05:52:22 +0000 (01:52 -0400)]
Merge: String api

Modified a bit of the API for Strings/Buffers as a reaction to the `appendgate` that occured earlier this week.

Now, copy methods (+,*,to_upper/lower) are deferred to String and in-place equivalents are available for Buffer.

Pull-Request: #516
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: model: fix a compiler crash on access to null constructor signature
Jean Privat [Tue, 1 Jul 2014 19:23:40 +0000 (15:23 -0400)]
Merge: model: fix a compiler crash on access to null constructor signature

Before this patch, compilation process stopped on a null pointer exception.
Because of the compilation workflow, nitg tried to access a super init even
if this init was malformed (type error) and thus not modelized properly.

This commit add one more condition to ensure that msignature is initialized before the test
and raise the correct error instead of crashing.

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

Pull-Request: #538
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agotests_full: add mnit_null variants, and the .inputs file for shoot
Jean Privat [Mon, 16 Jun 2014 15:38:50 +0000 (11:38 -0400)]
tests_full: add mnit_null variants, and the .inputs file for shoot

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotests: teach tests.sh to use MNIT_* environment variables
Jean Privat [Mon, 16 Jun 2014 15:37:34 +0000 (11:37 -0400)]
tests: teach tests.sh to use MNIT_* environment variables

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoshoot: add a `null` target that uses mnit::mnit_null
Jean Privat [Mon, 16 Jun 2014 15:30:28 +0000 (11:30 -0400)]
shoot: add a `null` target that uses mnit::mnit_null

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agolib/mnit: introduce `mnit_null` to execute mnit without a display
Jean Privat [Mon, 16 Jun 2014 15:29:10 +0000 (11:29 -0400)]
lib/mnit: introduce `mnit_null` to execute mnit without a display

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agolib/mnit: introduce `mnit_injected_input` to inject events into mnit applications
Jean Privat [Tue, 1 Jul 2014 19:05:24 +0000 (15:05 -0400)]
lib/mnit: introduce `mnit_injected_input` to inject events into mnit applications

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agomodel: fix a compiler crash on access to null constructor signature
Alexandre Terrasa [Tue, 1 Jul 2014 16:17:17 +0000 (12:17 -0400)]
model: fix a compiler crash on access to null constructor signature

Before this patch, compilation process stopped on a null pointer exception.
Because of the compilation workflow, nitg tried to access a super init even
if this init was malformed (type error) and thus not modelized properly.

This commit add one more condition to ensure that msignature is initialized before the test
and raise the correct error instead of crashing.

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agonitdoc: update tests
Alexandre Terrasa [Tue, 1 Jul 2014 15:50:50 +0000 (11:50 -0400)]
nitdoc: update tests

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agonitdoc: auto hide source-link
Alexandre Terrasa [Thu, 26 Jun 2014 18:30:59 +0000 (14:30 -0400)]
nitdoc: auto hide source-link

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agonitdoc: generate a documentation page for all mproperties
Alexandre Terrasa [Thu, 26 Jun 2014 17:46:56 +0000 (13:46 -0400)]
nitdoc: generate a documentation page for all mproperties

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agonitdoc: generate a documentation page for all MGroup
Alexandre Terrasa [Wed, 25 Jun 2014 15:20:39 +0000 (11:20 -0400)]
nitdoc: generate a documentation page for all MGroup

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agonitdoc: better display of section headers
Alexandre Terrasa [Mon, 30 Jun 2014 18:11:20 +0000 (14:11 -0400)]
nitdoc: better display of section headers

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agonitdoc: better display of concerns
Alexandre Terrasa [Mon, 30 Jun 2014 18:10:19 +0000 (14:10 -0400)]
nitdoc: better display of concerns

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: java: intro pop_from_local_frame
Jean Privat [Tue, 1 Jul 2014 12:52:33 +0000 (08:52 -0400)]
Merge: java: intro pop_from_local_frame

A very useful features when using the JNI reference stack to clean up local references.

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

Pull-Request: #533
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>