Jean Privat [Thu, 20 Mar 2014 09:15:16 +0000 (05:15 -0400)]
lib/coll: make private some specific implementations of interfaces
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 20 Mar 2014 09:14:07 +0000 (05:14 -0400)]
lib/coll: make CoupleMapIterator private
Thus introduce a protected service `CoupleMap::couple_iterator` to
factorise the instantiation.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 20 Mar 2014 09:10:52 +0000 (05:10 -0400)]
lib/coll: generalize `insert` in Sequence
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 20 Mar 2014 09:04:07 +0000 (05:04 -0400)]
lib/coll: move *index_of* in Sequence
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 20 Mar 2014 01:23:18 +0000 (21:23 -0400)]
lib: document abstract_collection + nitunit tests
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 20 Mar 2014 01:40:00 +0000 (21:40 -0400)]
lib/array: fix AbstractArray::unshift
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 19 Mar 2014 18:47:22 +0000 (14:47 -0400)]
Merge remote-tracking branch 'alexis/various-ffi-fixes'
Alexis Laferrière [Sat, 15 Mar 2014 15:04:06 +0000 (11:04 -0400)]
android: make apps fullscreen
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Mar 2014 15:03:48 +0000 (11:03 -0400)]
android: cleanup indentation in generation of xml files
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Wed, 19 Mar 2014 12:55:04 +0000 (08:55 -0400)]
Merge remote-tracking branch 'alexis/more-jvm'
Jean Privat [Tue, 18 Mar 2014 16:58:18 +0000 (12:58 -0400)]
Merge branch 'streamable'
Alexis Laferrière [Tue, 18 Mar 2014 15:21:13 +0000 (11:21 -0400)]
tests: add errors to the jvm tests
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 18 Mar 2014 15:09:13 +0000 (11:09 -0400)]
tests: test JavaVM::destroy and ::env
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Mar 2014 19:10:48 +0000 (15:10 -0400)]
tests: improve error handling in test_jvm
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 18 Mar 2014 15:05:40 +0000 (11:05 -0400)]
Merge branch 'comparators'
Jean Privat [Tue, 18 Mar 2014 15:05:25 +0000 (11:05 -0400)]
Merge branch 'file_string'
Jean Privat [Tue, 18 Mar 2014 15:05:07 +0000 (11:05 -0400)]
Merge remote-tracking branch 'alexis/vim'
Jean Privat [Tue, 18 Mar 2014 15:03:58 +0000 (11:03 -0400)]
lib/html: adapt HTMLPage & HTMLTag to Streamable
And update clients to the new API
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Thu, 13 Mar 2014 04:11:20 +0000 (00:11 -0400)]
nitg: add an extra \n after FFI rules for a better style of the generated mk
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 13 Mar 2014 04:10:40 +0000 (00:10 -0400)]
nitg: fix use of dep_rules to differentiate between rules and .o
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Mar 2014 14:59:17 +0000 (10:59 -0400)]
lib/jvm: intro JavaVM::attach_current_thread
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Mar 2014 12:23:46 +0000 (08:23 -0400)]
lib/jvm: intro JavaVM::env
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Mar 2014 14:58:20 +0000 (10:58 -0400)]
lib/jvm: rename JavaVM::destroy
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Mar 2014 14:57:58 +0000 (10:57 -0400)]
lib/jvm: clean up JavaVM error system
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Mar 2014 19:11:07 +0000 (15:11 -0400)]
lib/jvm: create JVM with custom options
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Mar 2014 19:07:41 +0000 (15:07 -0400)]
lib/kernel: intro Pointer::free
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Mar 2014 00:46:05 +0000 (20:46 -0400)]
misc: add support for FFI with Java and C++ to vim syntax
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Mar 2014 11:20:21 +0000 (07:20 -0400)]
misc: use nitc instead of nitg in syntastic
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 14 Mar 2014 20:23:50 +0000 (16:23 -0400)]
lib/file: fix border-use-cases of String::basename
and add nitunit tests to improve documentation
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 14 Mar 2014 20:22:19 +0000 (16:22 -0400)]
lib/file: remove all trailing / on String::dirname
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 14 Mar 2014 20:20:05 +0000 (16:20 -0400)]
Merge remote-tracking branch 'alexis/lib-jvm'
Romain Chanoir [Tue, 18 Feb 2014 15:02:45 +0000 (10:02 -0500)]
tests: modifies tests.sh to execute code using the jvm module
Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Romain Chanoir [Tue, 18 Feb 2014 15:18:20 +0000 (10:18 -0500)]
tests: intro tests for the jvm module
Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>
Romain Chanoir [Tue, 28 Jan 2014 16:07:22 +0000 (11:07 -0500)]
lib: intro the jvm module
Signed-off-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 14 Mar 2014 17:13:34 +0000 (13:13 -0400)]
Merge branch 'test_platform'
Jean Privat [Fri, 14 Mar 2014 15:20:23 +0000 (11:20 -0400)]
tests: add mnit linux examples
But no sav/ since runtime platform messages are platform dependent,
thus not reproducible.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 14 Mar 2014 01:41:55 +0000 (21:41 -0400)]
migration: use Comparator instead of Sorter in code
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 14 Mar 2014 01:26:08 +0000 (21:26 -0400)]
tests: add mnit android examples
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 14 Mar 2014 00:29:42 +0000 (20:29 -0400)]
lib/ordered_tree: adapt OrderedTree to Streamable
and update clients
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 14 Mar 2014 00:45:27 +0000 (20:45 -0400)]
lib/sorter: provide a stateless singleton `default_comparator`
This should prevent useless instantiations
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 14 Mar 2014 00:44:19 +0000 (20:44 -0400)]
lib/sorter: rename Sorter to Comparator
Old names remain for compatibility.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 13 Mar 2014 21:38:27 +0000 (17:38 -0400)]
model_viz: adapt MProjectDot to Streamable
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 13 Mar 2014 20:03:52 +0000 (16:03 -0400)]
lib/csv: adapt CSVDocument to the Streamable interface.
Also improve the efficiency of the writing implementation.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 13 Mar 2014 12:56:42 +0000 (08:56 -0400)]
lib: move `Template::write_to_*` to `Streamable`
Their implementation only depends on `write_to` that is introduced
in Streamable
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 13 Mar 2014 21:29:48 +0000 (17:29 -0400)]
tests: add basic platform management
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 13 Mar 2014 19:47:44 +0000 (15:47 -0400)]
Merge remote-tracking branch 'alexis/much-more-android'
Fixes #334
Alexis Laferrière [Thu, 13 Mar 2014 14:33:34 +0000 (10:33 -0400)]
lib: add doc to Passwd properties
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 12 Mar 2014 20:18:42 +0000 (16:18 -0400)]
examples: simplify Makefiles of mnit examples
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 12 Mar 2014 20:11:57 +0000 (16:11 -0400)]
lib: move Passwd::gecos to a new posix_ext module
The C function is only provided on some implementation of POSIX and
absent from any POSIX version.
See GNU man page of getpwnam #Conforming to.
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 13 Mar 2014 16:09:24 +0000 (12:09 -0400)]
lib: in Int::sqrt, use C sqrt function for double
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 12 Mar 2014 19:59:01 +0000 (15:59 -0400)]
lib: remove broken Int::sin/cos
Not only these functions weren't available on Android, but their
usage was invalid.
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 13 Mar 2014 12:37:28 +0000 (08:37 -0400)]
Merge branch 'dump_rta'
Alexandre Terrasa [Thu, 13 Mar 2014 04:21:35 +0000 (21:21 -0700)]
doc: modified comment for typing::AExpr::mtype
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Wed, 12 Mar 2014 17:44:07 +0000 (13:44 -0400)]
metrics/rta: save the list of live things in files
Simply use `live_types_to_csv` and `live_methods_to_tree` to produce
two files in the correct output directory.
This helps the debugging of engines when RTA is buggy or misused.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 12 Mar 2014 22:24:48 +0000 (18:24 -0400)]
Merge remote-tracking branch 'alexis/even-more-android'
Alexis Laferrière [Wed, 12 Mar 2014 19:56:27 +0000 (15:56 -0400)]
nitg: do not use libunwind for platforms which do not support it
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 12 Mar 2014 19:01:26 +0000 (15:01 -0400)]
nitg/android: lock orientation of Android applications
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 12 Mar 2014 15:03:57 +0000 (11:03 -0400)]
lib/mnit_android: use AndroidMotionEvent::action to get the pressed state
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 12 Mar 2014 15:03:35 +0000 (11:03 -0400)]
lib/mnit_android: intro AndroidMotionEvent::action
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 10 Mar 2014 18:43:26 +0000 (14:43 -0400)]
lib/mnit_android: correctly implement and use the generate_input method
This method was previously not implemented for Android.
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 11 Mar 2014 13:49:24 +0000 (09:49 -0400)]
lib/mnit_android: inverse importation of app and opengles1
Fix warnings of LOGW/I.
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 11 Mar 2014 13:48:55 +0000 (09:48 -0400)]
lib/mnit_linux: replace calls to LOGI/LOGW with fprintf
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 11 Mar 2014 13:48:07 +0000 (09:48 -0400)]
lib/mnit: less C warnings for LOGI/W
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Wed, 12 Mar 2014 18:20:50 +0000 (14:20 -0400)]
Merge branch 'metrics'
Jean Privat [Wed, 12 Mar 2014 18:20:26 +0000 (14:20 -0400)]
Merge branch 'fix_module_owner_placebo'
Jean Privat [Wed, 12 Mar 2014 17:41:07 +0000 (13:41 -0400)]
rta: add `live_methods_to_tree` to provide human-readable infos on methods
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 12 Mar 2014 17:18:31 +0000 (13:18 -0400)]
rta: add `live_types_to_csv` to provide human-readable info on types
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 12 Mar 2014 16:07:28 +0000 (12:07 -0400)]
model: fix module owner placebo
nitdoc still rely on the old nesting hierarchy.
But the implementation of the placebo was buggy if a nested module is
loaded before its nesting module (because a wrongful usage of
`.mmodules.first`).
This patch has two small parts
* add a method `fuzzy_owner` to a MGroup (to replace the crazy
`.mmodules.first`)
* a special case is added when a nesting module is loaded after some of
its nested ones
Fix #324
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Mon, 10 Mar 2014 23:20:09 +0000 (19:20 -0400)]
nitg: fix compilation of assets to apk
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 10 Mar 2014 18:45:37 +0000 (14:45 -0400)]
lib/mnit_android: fix redef of Object::print
This old hack was revealed by the latest merge of FFI related PR.
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Wed, 12 Mar 2014 15:29:47 +0000 (11:29 -0400)]
Merge remote-tracking branch 'alexis/a_star'
The type error was detected by nitg in complex cases.
Alexis Laferrière [Tue, 11 Mar 2014 15:00:44 +0000 (11:00 -0400)]
lib/a_star: minor style cleanup
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 11 Mar 2014 15:00:06 +0000 (11:00 -0400)]
lib/a_star: fix use of virtual type in Node::path_to
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Wed, 12 Mar 2014 15:00:14 +0000 (11:00 -0400)]
tests: update nitmetrics stuff
Note: nobody saw it but there was a `Assert failed` in the previous sav file.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 12 Mar 2014 14:28:19 +0000 (10:28 -0400)]
Merge branch 'test_inputs'
Jean Privat [Wed, 12 Mar 2014 14:27:31 +0000 (10:27 -0400)]
tests: permit multiple inputs on a single test
Currently, for each program, if a `name.inputs` file exists, it is used for input for
all executions (for a total of alts * (args+1) executions).
Now a specific input can be used for each specific args.
This distinct input file is the one named with the basename of the res file.
eg. for the program `some_test.nit`, the file `some_test_args2.inputs` is
used as input for the execution associated to the second
line of the `some_test.args` file.
The result of the execution is still `some_test_args2.res`.
If there is no specific inputs file, the previous behavior remains:
`some_test.inputs` is used if it exists, else `/dev/null` is used.
The point of this patch is to enable specific CLI interactive programs,
like the debugger or nitx, to have automatizable regression tests.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 12 Mar 2014 14:25:42 +0000 (10:25 -0400)]
Merge branch 'debug_require'
Jean Privat [Wed, 12 Mar 2014 13:58:33 +0000 (09:58 -0400)]
nitmetrics: do not crash in `to_console` if no values to present
The crash occurs since `max` and `min` assert that `not values.is_empty`.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 12 Mar 2014 13:56:50 +0000 (09:56 -0400)]
modelviz: filter out modules without groups to avoid NPE error
These modules without groups are injected one or implicit bottom modules.
Now `nitmetrics m1.nit m2.nit --all` do not crash.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 20:20:54 +0000 (16:20 -0400)]
model_viz: remove `AlphaComparator`&cie. since thez are now in standard
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 20:06:13 +0000 (16:06 -0400)]
lib/string: provide `alpha_comparator` and `CachedAlphaComparator`
Sorting alphanumerically has never been so easy.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 19:09:23 +0000 (15:09 -0400)]
abstract_compiler: show who require a declaration when not fulfilled
~~~
No provided declaration for SOME_strage_symbol
aborted
~~~
is not the best error message when developing the compiler.
This patch attach node to requirements, so the origin of the request
can be shown on error.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 18:23:56 +0000 (14:23 -0400)]
Merge branch 'has_supercall'
Jean Privat [Tue, 11 Mar 2014 18:15:12 +0000 (14:15 -0400)]
src: use `ASuperExpr::mpropdef` instead of asking the frame or visitors
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 18:13:51 +0000 (14:13 -0400)]
typing: add `ASuperExpr::mpropdef` to stores the called super-property
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 17:42:01 +0000 (13:42 -0400)]
src: suppr. collect_super_sends module
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 17:41:04 +0000 (13:41 -0400)]
nitgs: use `MPorpDef::has_supercall` insead of collect_super_sends
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 17:40:16 +0000 (13:40 -0400)]
ffi: ASuperExternCall set mpropdef.has_supercall as true
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 11 Mar 2014 17:17:16 +0000 (13:17 -0400)]
frontend: move `MPropDef::has_supercall` to `modelize_property`
new init will add implicit super-calls, so the flag that inform
post-frontend phases that a `super` call is required must
be more accessible.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 10 Mar 2014 23:43:42 +0000 (19:43 -0400)]
Merge branch 'templates'
Jean Privat [Mon, 10 Mar 2014 20:28:36 +0000 (16:28 -0400)]
Merge branch 'tests'
Jean Privat [Mon, 10 Mar 2014 16:53:53 +0000 (12:53 -0400)]
tests: reuse legacy ffi for test_extern.nit
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 10 Mar 2014 15:45:50 +0000 (11:45 -0400)]
niti: add missing extern&intern methods on Char and Float
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 10 Mar 2014 15:35:41 +0000 (11:35 -0400)]
tests: add a lot of missing sav/ files
most are empty and from the lib/ directory
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 10 Mar 2014 15:29:13 +0000 (11:29 -0400)]
tests: cleanup .skip files from old stuff
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 10 Mar 2014 15:12:06 +0000 (11:12 -0400)]
tests: *todo* and *fail* marked as skiped in the XML juint file
There is no way, in the JUnit format to distinguish between *expected
success* and *expected failure*.
But there is a distinction between *run* and *skipped* (shown as green and
yellow by Jenkins).
This hack overload the currently useless *skipped* status to mark expected
failure (todo and fixme).
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 10 Mar 2014 16:56:59 +0000 (12:56 -0400)]
src: remove now useless compiling_writer
If required, use lib/template instead
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 10 Mar 2014 16:55:45 +0000 (12:55 -0400)]
src/c_tools: use template instead of compiling_writer
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 10 Mar 2014 16:39:34 +0000 (12:39 -0400)]
Merge remote-tracking branch 'alexis/more-android'
* Adds the libPNG project to the share folder. This library is not available in the Android NDK and thus must be added to each generated apk.
* Adds the Android mnit implementation
* Improves nitg compilation for Android to support mnit projects
* Update the mnit examples with their Android version
* Play Hunted Dino on Android!
Alexis Laferrière [Sat, 8 Mar 2014 03:16:34 +0000 (22:16 -0500)]
NOTICE: updated with info of the libpng project
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>