nit.git
10 years agoMerge: CallSite on AFor and ARange
Jean Privat [Fri, 28 Mar 2014 22:13:12 +0000 (18:13 -0400)]
Merge: CallSite on AFor and ARange

Use CallSite to resolve and type some implicit services.
Subsequent phases will like them!

Currenlty: all the AFor and ARange services are converted and tools updated.
TODO: Array and SuperString

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

10 years agotests: update error messages
Jean Privat [Fri, 28 Mar 2014 00:37:31 +0000 (20:37 -0400)]
tests: update error messages

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

10 years agolib/sha1: fix nitunit
Jean Privat [Fri, 28 Mar 2014 00:08:46 +0000 (20:08 -0400)]
lib/sha1: fix nitunit

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

10 years agoMerge: lib: added sha1 on String
Jean Privat [Fri, 28 Mar 2014 00:04:47 +0000 (20:04 -0400)]
Merge: lib: added sha1 on String

Added function to compute the SHA-1 of a String in both its Binary and to hex form.

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

10 years agolib: added sha1 on String
Lucas Bajolet [Thu, 27 Mar 2014 20:33:42 +0000 (16:33 -0400)]
lib: added sha1 on String

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

10 years agoMerge: Fix visibility importation
Jean Privat [Thu, 27 Mar 2014 20:15:28 +0000 (16:15 -0400)]
Merge: Fix visibility importation

Pull-Request: #360
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agoMerge: Opt disable phase
Jean Privat [Thu, 27 Mar 2014 17:44:17 +0000 (13:44 -0400)]
Merge: Opt disable phase

`--disable-phase` to disable phase and broke tools :)

The point is to improve testing and comparison with and without specific (optional) phases

Pull-Request: #371
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agoMerge branch 'strings'
Jean Privat [Thu, 27 Mar 2014 06:25:49 +0000 (02:25 -0400)]
Merge branch 'strings'

10 years agoMerge: Callgraph
Jean Privat [Thu, 27 Mar 2014 01:04:53 +0000 (21:04 -0400)]
Merge: Callgraph

Quick patches so that RTA can give two new pieces of information.

1. what are the live CallSites? `RTA::live_callsites`
2. for each live CallSite, what are the live targets (MMethodDef) `RTA::live_targets`

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

10 years agophase: add option --disable-phase
Jean Privat [Thu, 27 Mar 2014 01:00:56 +0000 (21:00 -0400)]
phase: add option --disable-phase

Can be used to desactivate specific phases when testing and debugging.
The option can also lists the sequence of phases and their dependencies.

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

10 years agophase: use a better name on output
Jean Privat [Thu, 27 Mar 2014 00:47:15 +0000 (20:47 -0400)]
phase: use a better name on output

By defaut this uses the lowercased prefix of the classname.
But specific phases can redefine `to_s` if required.

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

10 years agoMerge: Fix ffi null service
Jean Privat [Wed, 26 Mar 2014 23:55:49 +0000 (19:55 -0400)]
Merge: Fix ffi null service

With nitg-g, the linker could fail when the same two piece of code will be in distinct files,
since the #ifndef trick does not cross compilation units.

This merge is just a workaroud where we use a global flag to avoid multiple definition.
While it works (thus is an improvement) it is ugly and broke the separate compilation concerns.

Pull-Request: #368
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agotyping: add `ARangeExpr::init_callsite` and use it everywhere
Jean Privat [Wed, 26 Mar 2014 20:08:05 +0000 (16:08 -0400)]
typing: add `ARangeExpr::init_callsite` and use it everywhere

One more callsite, and less method got manually

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

10 years agonit: use callsites in AFor instead re-resolving stuff
Jean Privat [Wed, 26 Mar 2014 19:46:20 +0000 (15:46 -0400)]
nit: use callsites in AFor instead re-resolving stuff

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

10 years agorta: use callsites in AFor instead re-resolving stuff
Jean Privat [Wed, 26 Mar 2014 19:45:50 +0000 (15:45 -0400)]
rta: use callsites in AFor instead re-resolving stuff

The code is so much simple now

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

10 years agotyping: AFor store services as CallSite (instead of MMethod)
Jean Privat [Wed, 26 Mar 2014 19:44:46 +0000 (15:44 -0400)]
typing: AFor store services as CallSite (instead of MMethod)

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

10 years agotyping: AFor remove old `iterate` case
Jean Privat [Wed, 26 Mar 2014 19:43:41 +0000 (15:43 -0400)]
typing: AFor remove old `iterate` case

They where for old closures

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

10 years agoMerge: More on Pipeline
Jean Privat [Wed, 26 Mar 2014 19:25:36 +0000 (15:25 -0400)]
Merge: More on Pipeline

Pull-Request: #362
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agotests: update sav/nitmetrics_args1.res for RTA-callsite info
Jean Privat [Wed, 26 Mar 2014 19:01:57 +0000 (15:01 -0400)]
tests: update sav/nitmetrics_args1.res for RTA-callsite info

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

10 years agometrics/rta: add callsite_info to display things
Jean Privat [Wed, 26 Mar 2014 18:39:47 +0000 (14:39 -0400)]
metrics/rta: add callsite_info to display things

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

10 years agorta: add live_callsites and live_callsites
Jean Privat [Wed, 26 Mar 2014 18:25:24 +0000 (14:25 -0400)]
rta: add live_callsites and live_callsites

In a callgraph it is useful to be able to compute the live target of any
callsite

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

10 years agocallsite: add `mmodule` and `anchor` to the callsite objects
Jean Privat [Wed, 26 Mar 2014 18:21:42 +0000 (14:21 -0400)]
callsite: add `mmodule` and `anchor` to the callsite objects

This simplify the job of its users since more model information is
available.

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

10 years agocompiler_ffi: factorize code in compile_extern_helper_functions
Jean Privat [Wed, 26 Mar 2014 13:32:52 +0000 (09:32 -0400)]
compiler_ffi: factorize code in compile_extern_helper_functions

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

10 years agocompiler_ffi: ifndef does not protect multiple definition of symbols
Jean Privat [Wed, 26 Mar 2014 13:32:09 +0000 (09:32 -0400)]
compiler_ffi: ifndef does not protect multiple definition of symbols

`#ifndef` trick can work on the compiler, but not on the linker.

Do not use buggy pragma to protect multiple definition

10 years agotests: update sav/nitg-e/base_class_name.res because FlatString is the name
Jean Privat [Wed, 26 Mar 2014 08:29:39 +0000 (04:29 -0400)]
tests: update sav/nitg-e/base_class_name.res because FlatString is the name

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

10 years agocontrib/nitcc: use FlatBuffer instead of Buffer
Jean Privat [Wed, 26 Mar 2014 08:27:29 +0000 (04:27 -0400)]
contrib/nitcc: use FlatBuffer instead of Buffer

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

10 years agolib/string: remove redefinition of CHARVIEW that exposes private types
Jean Privat [Wed, 26 Mar 2014 00:51:53 +0000 (20:51 -0400)]
lib/string: remove redefinition of CHARVIEW that exposes private types

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

10 years agoMerge origin/master to prepare the integration
Jean Privat [Wed, 26 Mar 2014 00:46:23 +0000 (20:46 -0400)]
Merge origin/master to prepare the integration

Conflicts:
lib/standard/file.nit

10 years agolib/pipeline: add basic functional-like filer processing (map&select)
Jean Privat [Mon, 24 Mar 2014 18:56:57 +0000 (14:56 -0400)]
lib/pipeline: add basic functional-like filer processing (map&select)

Because Nit is not functional, worse, there is no anonymous classes, the
use is complex.
However, I tried to have the syntax as light as it could be currently.

I still suspect that for most cases, a `for` loop can perform
enough map&select style. Therefore, consider this commit as an
experimentation.

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

10 years agostdlib/strings: Minor style fix
Lucas Bajolet [Mon, 24 Mar 2014 18:13:27 +0000 (14:13 -0400)]
stdlib/strings: Minor style fix

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

10 years agostdlib/strings: Repaired hash for Buffers.
Lucas Bajolet [Fri, 7 Mar 2014 16:56:54 +0000 (11:56 -0500)]
stdlib/strings: Repaired hash for Buffers.

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

10 years agostdlib/strings: Added cache on Buffer.
Lucas Bajolet [Mon, 24 Mar 2014 16:55:49 +0000 (12:55 -0400)]
stdlib/strings: Added cache on Buffer.

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

10 years agostdlib/strings: Abstracted hash (breaks hash on Buffer temporarily)
Lucas Bajolet [Mon, 24 Mar 2014 18:03:43 +0000 (14:03 -0400)]
stdlib/strings: Abstracted hash (breaks hash on Buffer temporarily)

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

10 years agostdlib/strings: Added cache for efficency when calling to_cstring on FlatTexts.
Lucas Bajolet [Tue, 25 Mar 2014 19:42:09 +0000 (15:42 -0400)]
stdlib/strings: Added cache for efficency when calling to_cstring on FlatTexts.

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

10 years agostdlib/strings: Added reversed service on Text and subclasses.
Lucas Bajolet [Mon, 24 Mar 2014 16:00:34 +0000 (12:00 -0400)]
stdlib/strings: Added reversed service on Text and subclasses.

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

10 years agostdlib/strings: Generalized to_cstring to all Text representations.
Lucas Bajolet [Tue, 25 Mar 2014 19:39:42 +0000 (15:39 -0400)]
stdlib/strings: Generalized to_cstring to all Text representations.

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

10 years agostdlib/strings: Added flatten service.
Lucas Bajolet [Fri, 7 Mar 2014 15:22:29 +0000 (10:22 -0500)]
stdlib/strings: Added flatten service.

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

10 years agostdlib/strings: Modified constructor for Buffer, now works with any kind of text.
Lucas Bajolet [Tue, 25 Mar 2014 19:31:24 +0000 (15:31 -0400)]
stdlib/strings: Modified constructor for Buffer, now works with any kind of text.

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

10 years agostdlib/strings: Fixed behaviour for substring_from, returns an empty string instead...
Lucas Bajolet [Fri, 7 Mar 2014 20:02:00 +0000 (15:02 -0500)]
stdlib/strings: Fixed behaviour for substring_from, returns an empty string instead of crashing when from < 0.

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

10 years agostdlib/strings: Moved String as abstract, FlatString now the name for array-based...
Lucas Bajolet [Mon, 24 Mar 2014 15:58:55 +0000 (11:58 -0400)]
stdlib/strings: Moved String as abstract, FlatString now the name for array-based Strings.

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

10 years agostdlib/strings: Moved append to Buffer, now works on all known variants of Text.
Lucas Bajolet [Tue, 25 Mar 2014 19:29:48 +0000 (15:29 -0400)]
stdlib/strings: Moved append to Buffer, now works on all known variants of Text.

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

10 years agostdlib/strings: Abstracted functions common to all Text representations.
Lucas Bajolet [Tue, 25 Mar 2014 19:28:09 +0000 (15:28 -0400)]
stdlib/strings: Abstracted functions common to all Text representations.

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

10 years agoMerge: check signature visibility
Jean Privat [Tue, 25 Mar 2014 19:08:29 +0000 (15:08 -0400)]
Merge: check signature visibility

A public API property cannot expose a private type.

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

10 years agonitunit: use `--ignore-visibility` when executon tests
Jean Privat [Tue, 25 Mar 2014 19:04:20 +0000 (15:04 -0400)]
nitunit: use `--ignore-visibility` when executon tests

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

10 years agomodelbuilder: add option `--ignore-visibility`
Jean Privat [Tue, 25 Mar 2014 19:03:54 +0000 (15:03 -0400)]
modelbuilder: add option `--ignore-visibility`

This option will allow `nitunit` to execute tests that use
protected methods.

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

10 years agotests: update nitmetrics
Jean Privat [Mon, 24 Mar 2014 19:32:37 +0000 (15:32 -0400)]
tests: update nitmetrics

Because public things are different (not correct) I think.

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

10 years agotests: extends `base_prot` to check more visibility configuration
Jean Privat [Mon, 24 Mar 2014 15:13:10 +0000 (11:13 -0400)]
tests: extends `base_prot` to check more visibility configuration

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

10 years agotests: update base_attr3
Jean Privat [Fri, 21 Mar 2014 18:59:28 +0000 (14:59 -0400)]
tests: update base_attr3

updates ate related to fixed visibility and the new error message of protected access

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

10 years agosrc/typing: fix error message of protected method usage
Jean Privat [Tue, 25 Mar 2014 15:04:32 +0000 (11:04 -0400)]
src/typing: fix error message of protected method usage

The removed part should have come from some old debugging.

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

10 years agomodel: fix visibility total order
Jean Privat [Fri, 21 Mar 2014 18:58:34 +0000 (14:58 -0400)]
model: fix visibility total order

How could intrude == public and private == none?

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

10 years agolib/string_search: make all introdiced method of Pattern protected
Jean Privat [Tue, 25 Mar 2014 15:02:30 +0000 (11:02 -0400)]
lib/string_search: make all introdiced method of Pattern protected

Because they are inherited by String and Char, they could confuse
the user that look at these classes the documentation.

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

10 years agosrc: remove clients of protected Pattern methods
Jean Privat [Mon, 24 Mar 2014 19:24:37 +0000 (15:24 -0400)]
src: remove clients of protected Pattern methods

Use the public API in String instead.
Eg. `String::search` instead of `Pattern::search_in`

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

10 years agotests: add base_prot_sig to test usage of private type in public signature
Jean Privat [Tue, 25 Mar 2014 13:49:37 +0000 (09:49 -0400)]
tests: add base_prot_sig to test usage of private type in public signature

There is a lot of tests because there is a lot of combination...

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

10 years agomodelize_property: check that public properties only contains public types
Jean Privat [Tue, 25 Mar 2014 13:46:24 +0000 (09:46 -0400)]
modelize_property: check that public properties only contains public types

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

10 years agometrics: type phase attributes with Phase instead of private subclasses
Jean Privat [Tue, 25 Mar 2014 13:46:10 +0000 (09:46 -0400)]
metrics: type phase attributes with Phase instead of private subclasses

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

10 years agomodel_viz: privatize linex_comparator
Jean Privat [Tue, 25 Mar 2014 12:31:26 +0000 (08:31 -0400)]
model_viz: privatize linex_comparator

Because LinexComparator is private and the attribute
is only used as a cache.

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

10 years agolib/coll: remove private types from public signatures
Jean Privat [Tue, 25 Mar 2014 12:30:29 +0000 (08:30 -0400)]
lib/coll: remove private types from public signatures

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

10 years agoMerge: Easy entry point for student
Jean Privat [Mon, 24 Mar 2014 19:03:09 +0000 (15:03 -0400)]
Merge: Easy entry point for student

Simplify the entry point for new contributor of the tools.
4th (and last) of the #353 series.

Pull-Request: #353
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agoMerge: Process mainmodule and mmodules
Jean Privat [Mon, 24 Mar 2014 18:59:55 +0000 (14:59 -0400)]
Merge: Process mainmodule and mmodules

improve  `ModelBuilder::run_global_phases` and `Phase::process_mainmodule`.
Better API when more that one module is given (with an implicit bottom-module).

The 3rd PR of the #353 series

Pull-Request: #357
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agolib: modify lib/pipeline to work on iterators instead of collection
Jean Privat [Mon, 24 Mar 2014 17:44:19 +0000 (13:44 -0400)]
lib: modify lib/pipeline to work on iterators instead of collection

* Methods in `pipeline` are difficult to use because they are lazy.
* They are highly generic and return a abstract return type, thus
having them in Collection lead to strange API, like `[1,2,3].head(2)` that
is not an Array.
* Because they are in Collection, all standard class like Array show them
in their documentation, confusing beginners.

Moving all pipeline functions on Iterator solve these problems.

This basically reverts commit c0316e522d0d8053c0fb155bf1fbd14979a12202.

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

10 years agolib/curl: remove dep. en `pipeline`
Jean Privat [Mon, 24 Mar 2014 17:44:47 +0000 (13:44 -0400)]
lib/curl: remove dep. en `pipeline`

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

10 years agostdlib/strings: Reunited super StringCapable under Text.
Lucas Bajolet [Thu, 6 Mar 2014 19:19:31 +0000 (14:19 -0500)]
stdlib/strings: Reunited super StringCapable under Text.

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

10 years agostdlib/strings: Factorized several functions in Text.
Lucas Bajolet [Fri, 7 Mar 2014 19:59:50 +0000 (14:59 -0500)]
stdlib/strings: Factorized several functions in Text.

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

10 years agostdlib/strings: Added empty method to unify the production of an empty text.
Lucas Bajolet [Fri, 7 Mar 2014 18:54:52 +0000 (13:54 -0500)]
stdlib/strings: Added empty method to unify the production of an empty text.

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

10 years agostdlib/strings: Introduced virtual types for Text classes, used later for factorization.
Lucas Bajolet [Mon, 24 Mar 2014 17:08:43 +0000 (13:08 -0400)]
stdlib/strings: Introduced virtual types for Text classes, used later for factorization.

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

10 years agostdlib/strings: Moved, factorized and generalized comparison operators to Text.
Lucas Bajolet [Mon, 24 Mar 2014 15:53:58 +0000 (11:53 -0400)]
stdlib/strings: Moved, factorized and generalized comparison operators to Text.

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

10 years agostdlib/strings: Renamed AbstractString to FlatText.
Lucas Bajolet [Fri, 7 Mar 2014 19:57:24 +0000 (14:57 -0500)]
stdlib/strings: Renamed AbstractString to FlatText.

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

10 years agostdlib/strings: Moved Buffer to FlatBuffer, Buffer is now abstract.
Lucas Bajolet [Tue, 4 Mar 2014 18:20:18 +0000 (13:20 -0500)]
stdlib/strings: Moved Buffer to FlatBuffer, Buffer is now abstract.

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

10 years agostdlib/strings: Cleaned the old way of defining private attributes (readable var...
Lucas Bajolet [Thu, 27 Feb 2014 16:26:03 +0000 (11:26 -0500)]
stdlib/strings: Cleaned the old way of defining private attributes (readable var _...) and replaced with normal vars.

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

10 years agostdlib/strings: Corrected test_isa to work on Text instead of AbstractArrayRead.
Lucas Bajolet [Fri, 7 Mar 2014 19:49:50 +0000 (14:49 -0500)]
stdlib/strings: Corrected test_isa to work on Text instead of AbstractArrayRead.

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

10 years agostdlib/strings: Detached the Text block from Collection.
Lucas Bajolet [Mon, 24 Mar 2014 17:05:54 +0000 (13:05 -0400)]
stdlib/strings: Detached the Text block from Collection.

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

10 years agostdlib/strings: Detached Buffer from AbstractArray.
Lucas Bajolet [Mon, 3 Mar 2014 17:22:54 +0000 (12:22 -0500)]
stdlib/strings: Detached Buffer from AbstractArray.

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

10 years agostdlib/strings: Introduced class Text, will be used as a new abstraction between...
Lucas Bajolet [Thu, 6 Mar 2014 18:18:16 +0000 (13:18 -0500)]
stdlib/strings: Introduced class Text, will be used as a new abstraction between Flat Strings and Ropes.

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

10 years agostdlib/strings: Moved Substring to Buffer since it was in no way similar to the Strin...
Lucas Bajolet [Fri, 28 Feb 2014 20:16:33 +0000 (15:16 -0500)]
stdlib/strings: Moved Substring to Buffer since it was in no way similar to the String implementation.

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

10 years agostdlib/strings: Added reverse iterators on char views for Strings.
Lucas Bajolet [Mon, 24 Mar 2014 17:01:20 +0000 (13:01 -0400)]
stdlib/strings: Added reverse iterators on char views for Strings.

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

10 years agoMerge: Toolcontext process options
Jean Privat [Mon, 24 Mar 2014 14:44:11 +0000 (10:44 -0400)]
Merge: Toolcontext process options

improve `ToolContext::process_options`.
This factorizes code and reduces the number of buggy corner-case

The second PR of the #353 series

Pull-Request: #356

10 years agomerge: Reactivate networg debug
Jean Privat [Mon, 24 Mar 2014 14:39:22 +0000 (10:39 -0400)]
merge: Reactivate networg debug

Rename and reactivate the network debogger

First step of the PR series #353

Pull-Request: #355

10 years agoMerge branch 'doc_stdlib_some_more'
Jean Privat [Fri, 21 Mar 2014 18:45:57 +0000 (14:45 -0400)]
Merge branch 'doc_stdlib_some_more'

10 years agoMerge branch 'html_add_outer'
Jean Privat [Fri, 21 Mar 2014 17:33:22 +0000 (13:33 -0400)]
Merge branch 'html_add_outer'

10 years agolib/html: add method add_outer
Johann Dubois [Wed, 29 Jan 2014 19:43:24 +0000 (14:43 -0500)]
lib/html: add method add_outer

closes #233
signed-off-by: Johann Dubois <johann.dubois@outlook.com>
Signed-off-by: Jean Privat <jean@pryen.org>

10 years agoMerge branch 'doc_for_FileStat'
Jean Privat [Fri, 21 Mar 2014 17:21:05 +0000 (13:21 -0400)]
Merge branch 'doc_for_FileStat'

10 years agolib/file: Add comments in FileStat
Johann Dubois [Wed, 29 Jan 2014 19:49:31 +0000 (14:49 -0500)]
lib/file: Add comments in FileStat

closes #234
signed-off-by: Johann Dubois <johann.dubois@outlook.com>

10 years agolib/environ: more documentation and nitunit tests
Jean Privat [Fri, 21 Mar 2014 15:43:09 +0000 (11:43 -0400)]
lib/environ: more documentation and nitunit tests

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

10 years agolib/string_search: more documentation and nitunit tests
Jean Privat [Fri, 21 Mar 2014 15:41:58 +0000 (11:41 -0400)]
lib/string_search: more documentation and nitunit tests

Fixes #186
Fixes #218
Signed-off-by: Jean Privat <jean@pryen.org>

10 years agolib/file: more documentation and nitunit tests
Jean Privat [Fri, 21 Mar 2014 15:32:37 +0000 (11:32 -0400)]
lib/file: more documentation and nitunit tests

Fixes #160
Fixes #161
Signed-off-by: Jean Privat <jean@pryen.org>

10 years agolib/file: document and fix `file_extension`
Jean Privat [Fri, 21 Mar 2014 14:31:20 +0000 (10:31 -0400)]
lib/file: document and fix `file_extension`

Also remove the redundant (thus useless) test file.

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

10 years agotests: add src/test_test_phase
Jean Privat [Fri, 21 Mar 2014 03:10:13 +0000 (23:10 -0400)]
tests: add src/test_test_phase

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

10 years agometrics/generate_hier: project_hierarchy.dot use given_mmodules
Jean Privat [Fri, 21 Mar 2014 02:56:07 +0000 (22:56 -0400)]
metrics/generate_hier: project_hierarchy.dot use given_mmodules

Instead of using the first loaded project

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

10 years agotoolcontext: `process_options` require arguments.
Jean Privat [Fri, 21 Mar 2014 02:06:29 +0000 (22:06 -0400)]
toolcontext: `process_options` require arguments.

Having it to access directly `sys.args` broke some isolation concerns.

This commit also updates all tools to avoid breakage.

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

10 years agosrc: new example tool test_test_phase.nit
Jean Privat [Thu, 20 Mar 2014 21:17:07 +0000 (17:17 -0400)]
src: new example tool test_test_phase.nit

This module could be shown to first-time contributors (like students)
that need to implement some proof of concept.

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

10 years agomodelbuilder: add parameter `given_mmodules` to `Phase::process_mainmodule`
Jean Privat [Fri, 21 Mar 2014 02:47:23 +0000 (22:47 -0400)]
modelbuilder: add parameter `given_mmodules` to `Phase::process_mainmodule`

`given_modules` is the list of explicitely requested modules.
From the command-line for instance.

Thus, global phases can chose to work with the bottom main module or
with each specific given modules.

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

10 years agotests: update sav/ for tools
Jean Privat [Fri, 21 Mar 2014 01:58:27 +0000 (21:58 -0400)]
tests: update sav/ for tools

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

10 years agotest_phase: provide a simpler way to implement POC of nit tools
Jean Privat [Thu, 20 Mar 2014 21:09:53 +0000 (17:09 -0400)]
test_phase: provide a simpler way to implement POC of nit tools

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

10 years agomodelbuilder: `run_global_phases` takes an array of modules
Jean Privat [Fri, 21 Mar 2014 02:34:29 +0000 (22:34 -0400)]
modelbuilder: `run_global_phases` takes an array of modules

Instead of a single module.
Thus it can creates itself the implicit bottom module if required.

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

10 years agosrc: update tools to the new toolcontext helpers on option processing
Jean Privat [Fri, 21 Mar 2014 01:56:40 +0000 (21:56 -0400)]
src: update tools to the new toolcontext helpers on option processing

Specify a tooldescription
Get rid of manual management of most arguments error

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

10 years agotests: add src/test_phase
Jean Privat [Thu, 20 Mar 2014 21:14:24 +0000 (17:14 -0400)]
tests: add src/test_phase

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

10 years agomakefile: doc/nitc/index.html includes test_*
Jean Privat [Fri, 21 Mar 2014 03:24:44 +0000 (23:24 -0400)]
makefile: doc/nitc/index.html includes test_*

Also, old names of nitdbg_* are removed.

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

10 years agotoolcontext: add the flag `accept_no_arguments`
Jean Privat [Fri, 21 Mar 2014 00:47:29 +0000 (20:47 -0400)]
toolcontext: add the flag `accept_no_arguments`

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

10 years agomakefile: build nitdbg_* tools
Jean Privat [Fri, 21 Mar 2014 01:14:19 +0000 (21:14 -0400)]
makefile: build nitdbg_* tools

Because the ffi works again!

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

10 years agotoolcontext: process_option honors --help, --version and checks options errors
Jean Privat [Fri, 21 Mar 2014 00:45:00 +0000 (20:45 -0400)]
toolcontext: process_option honors --help, --version and checks options errors

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