Jean Privat [Wed, 23 Jul 2014 01:45:20 +0000 (21:45 -0400)]
typing: remove hack for top-level method `args`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 23 Jul 2014 01:43:36 +0000 (21:43 -0400)]
lib/standard: distinguish `args` and `sys.args`
The former is now a genuine top-level method.
The latter is now called `sys.program_args`.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 20:33:17 +0000 (16:33 -0400)]
Merge: Fix Android app name
Fixes the error reported by @privat
Pull-Request: #610
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 20:10:01 +0000 (16:10 -0400)]
Merge: Serialization: use model to get attribute types & `auto_serializable` implies `super Serializable`
The `auto_serializable` implies `super Serializable` part is up for discussion. It cleans up the code, but the code could no more be compatible with engines that do not handle the annotation.
Next there will be a tool (and/or a phase) to generate support to deserialize generic types.
Pull-Request: #608
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 19:49:21 +0000 (15:49 -0400)]
Merge: mnit_simple : Refactoring of android modules tests
All mnit_simple tests have been refactored to multiple test files allowing to run tests on a module basis. A new folder named `tests` has been created containing these tests. Each test now has a Makefile entry based on that rule : `test_Module_Name`.
Pull-Request: #568
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 22 Jul 2014 19:49:14 +0000 (15:49 -0400)]
Merge: nitmetrics: fix typo in usage text
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Pull-Request: #607
Reviewed-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Tue, 22 Jul 2014 19:10:37 +0000 (15:10 -0400)]
examples: add an app_name to mnit_moles
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 22 Jul 2014 19:10:22 +0000 (15:10 -0400)]
android: fix app_name in res
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 22 Jul 2014 12:37:45 +0000 (08:37 -0400)]
test: update serialization tests use of attributes and super class declaration
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 21 Jul 2014 13:52:14 +0000 (09:52 -0400)]
model: silence warnings on multiple declaration of superclasses from artifical code
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 21 Jul 2014 13:14:20 +0000 (09:14 -0400)]
serialization: use a post model phase to set expected attributes type
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 21 Jul 2014 13:10:56 +0000 (09:10 -0400)]
serialization: move type_name to AType and apply recursively
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 21 Jul 2014 00:24:46 +0000 (20:24 -0400)]
serialization: correctly detect generic types
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 21 Jul 2014 00:22:40 +0000 (20:22 -0400)]
serialization: automaticly add Serializable to auto_serializable classes
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 20 Jul 2014 14:40:42 +0000 (10:40 -0400)]
nitmetrics: fix typo in usage text
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 22 Jul 2014 17:26:29 +0000 (13:26 -0400)]
Merge: fix Int#to_s and migrate Java FFI Int to longs
A rewrite that closes #592 and closes #458
Pull-Request: #609
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 22 Jul 2014 17:26:27 +0000 (13:26 -0400)]
Merge: Add annotation lazy on attributes
This annotation is basically a better `cached`.
~~~
class A
var foo: Foo = some_complex_computation is lazy
end
var a = new A # no complex computation done yet
print a.foo # complex computation is done here
~~~
Unlike cached, the attribute is visible, and if a setter is available, the lazy can be sortcut. Thus lazy is behaving like a default value.
~~~
var b = new A
b.foo = new Foo # set before get,
print b.foo # thus complex computation is never done!
~~~
Note that with `readonly` #604 the setter can be unavailable, thus having lazy the only way to initialyze attributes.
Pull-Request: #605
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Frédéric Vachon [Tue, 22 Jul 2014 15:55:25 +0000 (11:55 -0400)]
lib/android: Removed simple_android UNDEFINED from nitg-g and nitg-sg sav
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Jean Privat [Tue, 22 Jul 2014 14:53:49 +0000 (10:53 -0400)]
tests: add base_attr_lazy
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Mon, 21 Jul 2014 00:10:47 +0000 (20:10 -0400)]
src: intro `parse_superclass`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 21 Jul 2014 00:08:16 +0000 (20:08 -0400)]
nitg: reorder extern-classes phase
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 18 Jun 2014 16:53:15 +0000 (12:53 -0400)]
lib/serialization: print errors when a type cannot be deserialized
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Mon, 21 Jul 2014 20:19:15 +0000 (16:19 -0400)]
niti: implements lazy in the getter using isset
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 20:17:43 +0000 (16:17 -0400)]
niti: extract attribute expr evaluation in its own method
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 20:04:23 +0000 (16:04 -0400)]
niti: Interpretor provides a service isset_attribute
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 20:03:52 +0000 (16:03 -0400)]
niti: clean AAttrPropdef#call
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 19:59:36 +0000 (15:59 -0400)]
comp: compile `lazy` in the getter
For primitive and nullables, lazy is implemented with an additionnal
boolean attribute used as a guard.
The guard is also update in the setter.
For nonnullable val*, lazy is implemented with issset that is currently
only correctly implemented in this subcase.
One isset has a good implementation, the guard implemnatation can be
removed.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 19:58:00 +0000 (15:58 -0400)]
comp: clean AAttrPropdef#compile_to_c
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 02:27:20 +0000 (22:27 -0400)]
modelize_property: add a guard for lazy attributes
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 19:58:45 +0000 (15:58 -0400)]
modelize_property: add annotation `lazy`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 11:54:41 +0000 (07:54 -0400)]
lib/android: update to Java `long` to represent a Nit `Int`
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Thu, 17 Jul 2014 18:57:40 +0000 (14:57 -0400)]
FFI with Java: use Java long instead of int to represent Nit's Int
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 12 May 2014 19:11:39 +0000 (15:11 -0400)]
nitg/ffi: Nit Int are C longs
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Lucas Bajolet [Mon, 12 May 2014 20:22:54 +0000 (16:22 -0400)]
lib/standard: Fixed implementation of to_s in Int.
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 03:17:07 +0000 (23:17 -0400)]
Merge: add the annotation `readonly` on attributes
`readonly` just generate no setter. So the value must be set trough the initial value.
Basically it is like the Scala `val` keyword.
Note that unlike the Java `final` modifier, the value cannot be set in a constructor (use a private setter instead if you need a restriction on the setter visibility)
~~~.rb
class Toto
var a = new Array[Int] is readonly
end
var t = new Toto
t.a.add 5 # OK
t.a = new Array[Int] # Error: no `a=` in Toto
~~~
Pull-Request: #604
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Tue, 22 Jul 2014 03:17:01 +0000 (23:17 -0400)]
Merge: understand writable as an annotation
~~~.rb
class Toto
var x: Int writable = 5 # before
var y: Int = 5 is writable # after
~~~
This should become the new way, so while an active migration is not needed yet, once this PR is merger, new code should use the new notation.
Bonus: writable accepts an optional agrument that is the name of the writer.
This allows the reserve the name `foo=` for high-level setters.
Eg.
~~~.rb
class Toto
var x: Int is private writable(set_x) # generates `set_x` instead of `x=`
fun x=(v: Int) do # `x=` is feee, so I can use it for a distinct method
assert x >= 0
set_x(v) # I use the generated `set_x` as a private internal setter
end
end
~~~
Pull-Request: #601
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Tue, 22 Jul 2014 03:16:56 +0000 (23:16 -0400)]
Merge: add attribute annotation `noinit` to skip the attribute in inits
~~~.rb
class Toto
var tata: Int is noinit
var tutu: String
end
var t = new Toto("hello") # only tutu in the constructor
~~~
Pull-Request: #600
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Tue, 22 Jul 2014 03:16:49 +0000 (23:16 -0400)]
Merge: Stop making docs by default
I am not sure people use the generated doc (I often ^C); for those that use it is, just `make docs`
Pull-Request: #603
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Mon, 21 Jul 2014 18:57:49 +0000 (14:57 -0400)]
tests: add base_attr_readonly
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 02:57:05 +0000 (22:57 -0400)]
Merge: proposal for model: Generalize access to `model` form `MEntitiy`.
Since, MEntity are model things, let the user access to the model from them.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Pull-Request: #598
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 02:57:00 +0000 (22:57 -0400)]
Merge: jwrapper: An extern class `in "Java"` generator
Consider as Work In Progress. This is an overview of what has been done so far on the java wrapper generator. Most of the features are implemented, but there's still a lot of work to do. In its actual form, the tool takes javap output stored in a file and wraps all methods and attributes (not really useful, but implemented) to generate a nit extern class in a .nit file. Up to one collection parameter and one collection return type are copied. Methods containing non-convertible types are auto-commented.
Features to come :
* Auto-generation of extern class for non-convertible types
* User interface with options
* Static overload support
Pull-Request: #571
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 22 Jul 2014 02:56:53 +0000 (22:56 -0400)]
Merge: friendz, a new game for contrib
Pull-Request: #561
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Mon, 21 Jul 2014 18:55:55 +0000 (14:55 -0400)]
modelize_property: add readonly annotation on attributes
Signed-off-by: Jean Privat <jean@pryen.org>
Frédéric Vachon [Mon, 21 Jul 2014 20:13:34 +0000 (16:13 -0400)]
contrib/jwrapper: Added static overload support
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Jean Privat [Mon, 21 Jul 2014 18:44:29 +0000 (14:44 -0400)]
doc: do not make the stdlib doc by default
Jean Privat [Mon, 21 Jul 2014 18:43:56 +0000 (14:43 -0400)]
doc: remove doc/Makefile
Since there is no more doc to generate
Alexandre Terrasa [Mon, 21 Jul 2014 18:29:31 +0000 (14:29 -0400)]
model: Generalize access to `model` form `MEntitiy`.
Since, MEntity are model things, let the user access to the model from them.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Sun, 20 Jul 2014 16:37:32 +0000 (12:37 -0400)]
model: makes MParameter an MEntity
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Mon, 21 Jul 2014 16:09:54 +0000 (12:09 -0400)]
tests: add base_attr_named_setters
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 15:55:54 +0000 (11:55 -0400)]
annotation: add arg_as_id
I do not know why is was forgot
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 15:56:54 +0000 (11:56 -0400)]
modelize_property: accepts alternative name for setters
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 15:49:23 +0000 (11:49 -0400)]
test: convert writable to annotations
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 15:41:52 +0000 (11:41 -0400)]
modelize_property: accept annotation `writable`
Signed-off-by: Jean Privat <jean@pryen.org>
Frédéric Vachon [Mon, 21 Jul 2014 15:36:27 +0000 (11:36 -0400)]
contrib/jwrapper: Added UNDEFINED to javap_visitor.res in sav
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Frédéric Vachon [Sun, 13 Jul 2014 21:11:46 +0000 (17:11 -0400)]
contrib/jwrapper: Added code generation module with code conversion maps
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Frédéric Vachon [Sun, 13 Jul 2014 21:10:22 +0000 (17:10 -0400)]
contrib/jwrapper: Added AST visitor for data extraction
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Frédéric Vachon [Sun, 13 Jul 2014 21:08:24 +0000 (17:08 -0400)]
contrib/jwrapper: Definition of a grammar to parse javap output
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Jean Privat [Mon, 21 Jul 2014 14:58:43 +0000 (10:58 -0400)]
tests: add base_init_noinit
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 14:57:43 +0000 (10:57 -0400)]
engine: skip noinit attributes on free constructors
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 14:57:11 +0000 (10:57 -0400)]
modelize_property: understand `noinit` annotation on attributes
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 14:55:08 +0000 (10:55 -0400)]
annotation: add `get_single_annotation` and `get_annotations`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 14:44:32 +0000 (10:44 -0400)]
Merge: Neo4j: bug fixes and improvments
Changes:
* avoid node duplication by force loading nodes from local store
* better handling of big graphes through separation of nodes and edges loading
* try to speed things up with nodes data preloading from `nodes_with_labels` response
Pull-Request: #597
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 14:44:17 +0000 (10:44 -0400)]
Merge: Implement FFI global references in nitg
Finally follows the spec of the FFI.
Works with the `minesweeper` test case by @Freddrickk, but not with nitvm #582 (more on that later).
Pull-Request: #595
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 14:44:04 +0000 (10:44 -0400)]
Merge: Annotation helper
New module `annotation` that factorize some common code on users of annotations.
Pull-Request: #596
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Mon, 21 Jul 2014 14:43:55 +0000 (10:43 -0400)]
Merge: src: some documentation on parser and model
So that the new nitdoc has something to display
Pull-Request: #594
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Mon, 21 Jul 2014 13:27:24 +0000 (09:27 -0400)]
src: some documentation on parser and model
Jean Privat [Fri, 11 Jul 2014 02:29:50 +0000 (22:29 -0400)]
tests: add friendz related sav
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 10 Jul 2014 15:58:36 +0000 (11:58 -0400)]
contrib: introduce the game friendz
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 01:00:52 +0000 (21:00 -0400)]
Merge: src/android: Modified annotations names to avoid ambiguities
As discussed with @xymus, modified the 3 recently merged annotations names from `min_sdk_version`, `target_sdk_version`, `max_sdk_version` to `min_api_version`, `target_api_version`, `max_api_version` to avoid ambiguities as the android documentation related to these AndroidManifest entries always refers to it as *API Level* settings.
#568 depends on this PR because the annotations will be renamed on the test files.
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Pull-Request: #599
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 21 Jul 2014 01:00:47 +0000 (21:00 -0400)]
Merge: Nity interface to Sqlite3 (A nicer wrapper to the old low-level Sqlite3 module)
No exposed extern classes, `is_open` method and an iterator!
Pull-Request: #584
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Frédéric Vachon [Sun, 20 Jul 2014 21:31:36 +0000 (17:31 -0400)]
lib/android: Added complete_simple_android.res to sav
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Frédéric Vachon [Sun, 20 Jul 2014 21:27:02 +0000 (17:27 -0400)]
lib/android: Changed entry to execute complete_simple_android by default
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Frédéric Vachon [Sun, 20 Jul 2014 21:26:25 +0000 (17:26 -0400)]
lib/android: mnit_simple tests refactoring
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Frédéric Vachon [Sun, 20 Jul 2014 19:28:56 +0000 (15:28 -0400)]
src/android: Changed annotations names to avoid ambiguities
Signed-off-by: Frédéric Vachon <fredvac@gmail.com>
Alexandre Terrasa [Sun, 20 Jul 2014 16:37:09 +0000 (12:37 -0400)]
model: implements MType::name
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Sun, 20 Jul 2014 16:24:19 +0000 (12:24 -0400)]
neo4j: preload data from `nodes_with_label` response.
Speed things a little up with this shortcut.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Sun, 20 Jul 2014 16:23:15 +0000 (12:23 -0400)]
neo4j: save and load edges separately from nodes.
Edges must be laoded manually by the user, this allow him to control
the way nodes and edges are loaded in memory and avoir out of memory
exception on big graphs.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Sun, 20 Jul 2014 16:20:43 +0000 (12:20 -0400)]
neo4j: try to load nodes from `local_nodes`
Avoid duplication of nodes from `load_node` service.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexis Laferrière [Sat, 19 Jul 2014 15:28:58 +0000 (11:28 -0400)]
tests: set nitvm_args3 as undefined
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 19 Jul 2014 00:11:03 +0000 (20:11 -0400)]
nitvm: replace hack by incr_refs
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Sat, 19 Jul 2014 03:20:53 +0000 (23:20 -0400)]
src: use the new module annotation in exising modules
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 19 Jul 2014 03:19:18 +0000 (23:19 -0400)]
src: new module annoation to help with annotations
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Sat, 19 Jul 2014 02:22:48 +0000 (22:22 -0400)]
tests: test incr_ref with lots of short-lived (in Nit) objects
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 18 Jul 2014 23:40:55 +0000 (19:40 -0400)]
FFI: implement the global reference functions
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 18 Jul 2014 17:57:10 +0000 (13:57 -0400)]
FFI: use libgc allocs
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 18 Jul 2014 18:57:50 +0000 (14:57 -0400)]
Merge: nitg: Added 3 annotations related to API level target and support for Android projects
It enables to add the minimum, maximum and target API level annotations in android projects. The annotations are as follows :
~~~
min_sdk_version(Int)
max_sdk_version(Int)
target_sdk_version(Int)
~~~
The target is the API used to build the project, the minimum sdk version specifies the minimum android API needed to run the app and the maximum is the maximum API level that can run the app. This PR allows to build for all android platforms instead of API 10 and below only. (API are platform versions)
The tests are structured to conform to #568. When #568 will me merged, the tests will have to be imported in `complete_mnit_android.nit`.
Won't compile before #580 is merged.
Pull-Request: #581
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Fri, 18 Jul 2014 18:53:42 +0000 (14:53 -0400)]
Merge: Attributes access with perfect hashing in nitvm
Runtime structures for accessing attributes in objects of the source program are now calculated.
Attributes access in runtime objects of the virtual machine is now functionnal with perfect hashing.
And some changes to improve the code in vm.nit
Signed-off-by: Julien Pagès <julien.projet@gmail.com>
Pull-Request: #582
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Julien Pagès [Fri, 18 Jul 2014 14:24:23 +0000 (16:24 +0200)]
nitvm: fix a crash caused by a bad allocation of virtual tables
Signed-off-by: Julien Pagès <julien.projet@gmail.com>
Julien Pagès [Wed, 16 Jul 2014 13:10:33 +0000 (15:10 +0200)]
nitvm: use perfect hashing for atribute access
Signed-off-by: Julien Pagès <julien.projet@gmail.com>
Alexis Laferrière [Thu, 17 Jul 2014 18:09:16 +0000 (14:09 -0400)]
tests: test some errors of sqlite3
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 17 Jul 2014 18:04:28 +0000 (14:04 -0400)]
lib/sqlite3: store and use the error code of a failed database opening
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 18 Jul 2014 16:50:31 +0000 (12:50 -0400)]
Merge: remove unmaintained documentation: developpez and nitreference
Maybe things from `developpez` (form early 2011) could be updated an put on the website?
Pull-Request: #588
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Fri, 18 Jul 2014 16:50:26 +0000 (12:50 -0400)]
Merge: nitunit: remove a deprecated TODO
Pull-Request: #593
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Alexis Laferrière [Wed, 16 Jul 2014 16:49:46 +0000 (12:49 -0400)]
tests: add a test for the Nity sqlite3 module
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 16 Jul 2014 15:28:17 +0000 (11:28 -0400)]
lib/sqlite3: intro nity interface
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 18 Jul 2014 02:32:41 +0000 (22:32 -0400)]
Merge: Fix asnotnull
Add warnings on useless as(not null) (one less TODO) and fix the bug on non-null primitives.
Fixes #589
Pull-Request: #591
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 18 Jul 2014 12:56:03 +0000 (08:56 -0400)]
neo4j: remove some as(notnull) to supress warnings
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 18 Jul 2014 13:24:30 +0000 (09:24 -0400)]
Merge 'origin/master' into fix-asnotnull to supress new warnings
Julien Pagès [Wed, 16 Jul 2014 13:08:42 +0000 (15:08 +0200)]
nitvm: clean the code and add some comments
Signed-off-by: Julien Pagès <julien.projet@gmail.com>
Julien Pagès [Wed, 16 Jul 2014 14:17:12 +0000 (16:17 +0200)]
niti: add write_attribute as a unique entry point
Signed-off-by: Julien Pagès <julien.projet@gmail.com>