Lucas Bajolet [Thu, 5 Feb 2015 15:53:02 +0000 (10:53 -0500)]
niti: Fixed method NativeString::copy_to in intern_call
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Tue, 3 Feb 2015 21:47:39 +0000 (16:47 -0500)]
lib/standard/time: Fixed String-related memory leak
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Tue, 3 Feb 2015 20:53:01 +0000 (15:53 -0500)]
lib/standard/string: Removed Float.to_precision_native
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Mon, 2 Feb 2015 18:16:44 +0000 (13:16 -0500)]
lib/standard/string: Fixed leaking Int.to_s method
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Fri, 30 Jan 2015 02:14:33 +0000 (09:14 +0700)]
update NOTICE
Jean Privat [Fri, 30 Jan 2015 02:01:18 +0000 (09:01 +0700)]
Merge: Ropefix
A few modifications to ropes, I discovered that the `+` routine used to create too many Concat nodes passed a certain point, which inceased the RAM use of Strings unnecessarily (might help with #1106's example program, on my machine the memory went from 200M+ used to 20M).
While I was at it, I removed a few old-style-inits that were no longer necessary.
Some others however I could not remove, maybe there is a way I can do so, but with the spec of the new constructors I'm not entirely sure how to do so without retaining unnneeded information or complexifying instanciation, that'll have to wait.
Pull-Request: #1127
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 29 Jan 2015 11:59:01 +0000 (18:59 +0700)]
Merge: ldflags for Android
For the same module, cflags and ldflags can vary per platform. This new annotation on annotations targets a platform for each cflags or ldflags. By default, the target platform is that of the host. It will probably need to be clarified on more modules once we support more platforms.
It will be used to load (or not load) OpenGL ES v1.0 vs 2.0 and libandroid in future PR. For now, only `calculator` should save on linking with OpenGL.
I hesitated between different annotations before settling on `@android`:
* `@target(android)` makes it clear that it is the target, but it gets a bit heavy to read: `module android_opengles1 is ldflags("-lEGL -lGLESv1_CM")@target(android)`
* `@only(android)` makes it clear that only Android is affected by this annotation.
* but `@android` is easy to read and clear enough to fit with an already complex syntax.
TODO `cflags@android` declarations are accepted but unused at this time.
Pull-Request: #1124
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Thu, 29 Jan 2015 11:58:53 +0000 (18:58 +0700)]
Merge: Optimizations in nitvm
This PR introduces some change in the implementation of object mechanisms in the nitvm.
Now, the dispatch between several mechanisms is made directly in the AST nodes instead of in runtime mechanisms themselves.
This PR is preliminary work before the implementation of complex optimization systems, but now the nitvm is sligtly more efficent than before because the choice between implementations is only made once (the first time).
I use a workaround in AST nodes to avoid conflict with refinements between the interpreter and the vm.
In the future this will need to be well implemented, maybe by creating a sort of ```CallSite``` for subtyping test and attribute access and store informations into them instead of into the nodes.
Pull-Request: #1120
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Lucas Bajolet [Wed, 28 Jan 2015 21:19:48 +0000 (16:19 -0500)]
lib/standard/ropes: Removed a few old-style-inits
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Wed, 28 Jan 2015 15:58:48 +0000 (10:58 -0500)]
lib/standard/ropes: Fixed concatenation routine for Concat + FlatString
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Julien Pagès [Fri, 23 Jan 2015 09:58:54 +0000 (10:58 +0100)]
nitvm: Optimize method call by dispatching between implementions in CallSites
Signed-off-by: Julien Pagès <julien.projet@gmail.com>
Alexis Laferrière [Wed, 28 Jan 2015 14:52:36 +0000 (09:52 -0500)]
lib: update portable modules with ldflags specific to Android
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 28 Jan 2015 14:54:23 +0000 (09:54 -0500)]
lib: define Android ldflags in user modules
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 27 Jan 2015 02:41:22 +0000 (21:41 -0500)]
nitc & lib: intro the @android annotation and use it in nitc
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 25 Jan 2015 16:10:52 +0000 (11:10 -0500)]
nitc: refactor MModule cflags and ldflags to support different target platforms
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 28 Jan 2015 14:40:10 +0000 (09:40 -0500)]
src: each platform has a name, except for the default
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Julien Pagès [Fri, 23 Jan 2015 09:52:13 +0000 (10:52 +0100)]
nitvm: Optimize attribute access and subtyping test by orienting between implementations in AST nodes
Signed-off-by: Julien Pagès <julien.projet@gmail.com>
Julien Pagès [Tue, 13 Jan 2015 16:18:15 +0000 (17:18 +0100)]
niti: Allow to redefine AST nodes in other engines, add documentation in vm
Signed-off-by: Julien Pagès <julien.projet@gmail.com>
Jean Privat [Tue, 27 Jan 2015 03:59:43 +0000 (10:59 +0700)]
Merge: A collection of miscellaneous commits
Pull-Request: #1122
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 27 Jan 2015 03:32:49 +0000 (10:32 +0700)]
Merge: Android support improvements
Pull-Request: #1123
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Sun, 25 Jan 2015 23:32:17 +0000 (18:32 -0500)]
examples/calculator: revamp style of the calculator code
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 25 Jan 2015 17:55:47 +0000 (12:55 -0500)]
C FFI: fix line offset in gcc errors on custom header code
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 24 Jan 2015 19:49:19 +0000 (14:49 -0500)]
lib/egl: add `renderable_type` related features
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 16 Dec 2014 14:14:09 +0000 (09:14 -0500)]
lib/more_collections: add `remove_at` to `HashMap[23]`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 2 Jan 2015 15:36:36 +0000 (10:36 -0500)]
lib/gtk: copy string returned from `GTKEntry`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 22 Dec 2014 15:42:49 +0000 (10:42 -0500)]
lib/sdl: intro `has_mouse|input_focus`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 18 Dec 2014 16:21:15 +0000 (11:21 -0500)]
lib/mnit_input: add `KeyEvent::name`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 26 Jan 2015 19:45:19 +0000 (14:45 -0500)]
nitc/android: "handle" all config changes
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 24 Jan 2015 19:27:05 +0000 (14:27 -0500)]
nitc/android: differentiate between debug and release versions
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 23 Jan 2015 16:57:41 +0000 (11:57 -0500)]
nitc/android: support using -m with Android compilation
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 27 Jan 2015 01:29:14 +0000 (08:29 +0700)]
Merge: Jwrapper: more clean up
Pull-Request: #1121
Reviewed-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Tue, 27 Jan 2015 01:29:04 +0000 (08:29 +0700)]
Merge: Nitmd benches
Copied from README:
# Bench Markdown
Benches markdown parsers.
## Usage
./bench_markdown.sh all
## Engines
* nitmd
* txtmark 0.11 (https://github.com/rjeschke/txtmark)
* markdown4j 2.2 (https://code.google.com/p/markdown4j/)
## Benches
Benches are inspired from the [Henkelmann's Actuarius benches](http://henkelmann.eu/2011/01/10/performance_comparison_of_markdown_processor_for_the_jvm).
Benches are variations of the same text generate from `benches/plain.md`
This text is De finibus bonorum et malorum which is said to be the basis for
the commonly used Lorem Ipsum test text.
The generator rudely chops it up in a configurable number of paragraphs,
lines per paragraph and approximate chars per line.
Depending on the variation, it “decorates” parts of the text with Markdown syntax.
All tests consist of 30 Paragraphs with 20 lines each and approx. 80 chars per line (before “decoration”).
Here are the descriptions of the variations:
* Plain Paragraphs: No modifications, just the plain text.
* Emphasis: Every word emphasized,
so the input `foo` is decorated as `*foo*` which should render as `<em>foo</em>`
* Strong: Every word emphasized,
`foo` → `**foo**` → `<strong>foo</strong>`
* Inline Code: Every word marked as inline code:
`foo` → ````foo```` → `<code>foo</code>`
* Fast Links: Every word a link without title or wrapped text:
`foo` → `<foo>` → `<a href="foo">foo</a>`
* Special XML Chars: Every word is replaced by chars that need to be escaped in XML:
`foo` → `"><&` → `"><'&`
* Inline HTML: Every word is wrapped in verbatim HTML:
`foo` → `<blink>foo</blink>` → `<blink>foo</blink>`
* Manual Line Breaks: Every line gets appended with `\n`:
`some line` → `some line\n` → `some line<br/>\n`
* Full Links: Every word is turned into a link with wrapped text, url and title:
`foo` → `[foo](http://example.com/foo "foo Title")` → `<a href="http://example.com/foo" title="foo Title">foo</a>`
* Full Images: Like full links, every word turned into an image reference
* Reference Links: Every word is turned into a link reference with an increasing id counter.
The link reference definition is added after the paragraph the link occurs in:
`foo` → `[foo][id123]` → `<a href="http://example.com/foo" title="foo Title">foo</a>`
* Block Quotes: Every paragraph is turned into a block quote by prepending a `>` to each line.
* Code Blocks: Every paragraph is turned into a code block by prepending four spaces to each line.
* Unordered Lists: Every paragraph is turned into a list with an item for each line by prepending `*` to each line.
* Mixed Test: A mix of all of the above: Some paragraphs lists, some code, some word emphasized etc.
Variation details can be found in `benches/gen_bench.nit`.
Pull-Request: #1116
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 27 Jan 2015 01:28:54 +0000 (08:28 +0700)]
Merge: lib/github: uses nitcorn to listen Github hook events.
This module introduces an abstract listener for Github hooks with nitcorn.
PS: OMG first PR with syntax highligh!!!! Thx @R4PaSs !
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Pull-Request: #1115
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Tue, 27 Jan 2015 01:28:44 +0000 (08:28 +0700)]
Merge: example: rosettacode 100 doors
Signed-off-by: Arthur Delamare <arthur.delamare@viacesi.fr>
Pull-Request: #1099
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Thu, 22 Jan 2015 11:12:13 +0000 (12:12 +0100)]
benches/markdowm: adds README
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 26 Jan 2015 17:50:17 +0000 (18:50 +0100)]
benches/markdown: introduces engine markdown4j
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 26 Jan 2015 17:49:20 +0000 (18:49 +0100)]
benches/markdown: introduces engine txtmark
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 26 Jan 2015 17:46:48 +0000 (18:46 +0100)]
benches/markdown: introduces engine nitmd
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Tue, 20 Jan 2015 23:19:34 +0000 (00:19 +0100)]
benches/markdown: introduces markdown benches
`gen_benches` program is used to generate a bunch of variations from an original md file.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexis Laferrière [Mon, 26 Jan 2015 16:21:44 +0000 (11:21 -0500)]
contrib/jwrapper: refactor some duplicated code
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 26 Jan 2015 16:12:32 +0000 (11:12 -0500)]
contrib/jwrapper: update generated headers
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 26 Jan 2015 16:10:31 +0000 (11:10 -0500)]
contrib/jwrapper: remove even more code related to collection hack
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 26 Jan 2015 16:09:28 +0000 (11:09 -0500)]
contrib/jwrapper: support converting getter/setter names beginning in lowercase
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Arthur Delamare [Tue, 13 Jan 2015 15:24:48 +0000 (10:24 -0500)]
example: rosettacode 100 doors
Signed-off-by: Arthur Delamare <arthur.delamare@viacesi.fr>
Jean Privat [Mon, 26 Jan 2015 07:37:31 +0000 (14:37 +0700)]
Merge: Rename annotations for the C/C++ compilers and linker to `cflags` and `ldflags`
The new name is shorter, easier to remember and more standard. I may soon extend these annotations to provide information per platform, mainly to provide ldflags for Android only.
Pull-Request: #1119
Reviewed-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Sat, 24 Jan 2015 14:18:41 +0000 (09:18 -0500)]
lib & contrib & tests: update users of `cflags` and `ldflags`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 20 Jan 2015 19:25:26 +0000 (14:25 -0500)]
lib/android: pin the App instance being registered in C
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 16 Nov 2014 20:55:00 +0000 (15:55 -0500)]
android: use libgc on Android
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 22 Jan 2015 14:46:36 +0000 (09:46 -0500)]
android: intro a script to fetch and build libgc
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 20 Jan 2015 21:37:31 +0000 (16:37 -0500)]
lib/android: clean up debug code from the UI module
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 24 Jan 2015 14:17:45 +0000 (09:17 -0500)]
nitc: rename `c_compiler_option` and cie to `cflags` and `ldflags`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 23 Jan 2015 04:14:12 +0000 (11:14 +0700)]
Merge: improve changelog.sh
Don't count merges and display number of commits
Pull-Request: #1117
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Fri, 23 Jan 2015 04:14:01 +0000 (11:14 +0700)]
Merge: lib/github: implements caching to maximize rate limit.
Using JsonStore to save data locally and lighten the stress on API rate limit.
Pull-Request: #1110
Reviewed-by: Jean Privat <jean@pryen.org>
Alexandre Terrasa [Thu, 22 Jan 2015 11:03:07 +0000 (12:03 +0100)]
lib/github: uses nitcorn to listen Github hook events.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Thu, 22 Jan 2015 10:49:05 +0000 (11:49 +0100)]
lib/github: implements caching to maximize rate limit.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Thu, 22 Jan 2015 06:27:35 +0000 (13:27 +0700)]
Merge: Audio management for android + audio Abstraction API
Fixes some problems with the audio management for the android platform. The audio API for android still needs some work but is fine to use now !
The Abstraction API for sound management is very simple for now
Pull-Request: #1101
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
BlackMinou [Tue, 20 Jan 2015 13:56:26 +0000 (14:56 +0100)]
assets_and_ressources : global ref fixes
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Tue, 20 Jan 2015 13:37:34 +0000 (14:37 +0100)]
mnit simple : improved audio tests
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Tue, 20 Jan 2015 13:35:02 +0000 (14:35 +0100)]
mnit simple : change the format of dimensions to fix values
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Tue, 20 Jan 2015 13:33:35 +0000 (14:33 +0100)]
mnit simple : apparently, you can't name a sound file "sound"
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Thu, 15 Jan 2015 12:33:50 +0000 (13:33 +0100)]
App: Audio abstraction in App
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Thu, 15 Jan 2015 12:33:20 +0000 (13:33 +0100)]
Android audio : better audio handling
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
Jean Privat [Wed, 21 Jan 2015 02:39:30 +0000 (09:39 +0700)]
Merge: Check missing return in attributes with a block
Fixes #1103
Pull-Request: #1114
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexandre Terrasa [Tue, 20 Jan 2015 23:31:51 +0000 (00:31 +0100)]
benches: introduces bench_markdown script
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Tue, 20 Jan 2015 07:29:28 +0000 (14:29 +0700)]
changelog.sh: also count commits
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 20 Jan 2015 07:29:05 +0000 (14:29 +0700)]
changelog.sh: shortlog with --no-merges
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 20 Jan 2015 04:18:57 +0000 (11:18 +0700)]
Merge: Minor graphics related fixes and features
Pull-Request: #1113
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Tue, 20 Jan 2015 04:18:52 +0000 (11:18 +0700)]
Merge: Fix nitiwiki: Fixes auto-index links.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Pull-Request: #1112
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 20 Jan 2015 04:18:48 +0000 (11:18 +0700)]
Merge: lib/github: introduces Github hook events
First step to GitHubAPI hooks.
Pull-Request: #1111
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Romain Chanoir <chanoir.romain@courrier.uqam.ca>
Jean Privat [Tue, 20 Jan 2015 04:05:14 +0000 (11:05 +0700)]
tests: improve base_attr_init_val_block.nit to test bad returns
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 20 Jan 2015 04:04:07 +0000 (11:04 +0700)]
typing: check missing return in AAttrPropdef with block
Signed-off-by: Jean Privat <jean@pryen.org>
Alexandre Terrasa [Mon, 19 Jan 2015 12:29:06 +0000 (13:29 +0100)]
nitiwiki: makes auto-index appear in test files
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 19 Jan 2015 12:17:56 +0000 (13:17 +0100)]
nitiwiki: fixes links to auto-index pages.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 16 Jan 2015 00:23:00 +0000 (01:23 +0100)]
lib/github: introduces Github hook events
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Sat, 17 Jan 2015 03:55:35 +0000 (10:55 +0700)]
Merge: nitdoc: does not apply header style to span elements anymore.
Fixes #1108
Pull-Request: #1109
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 17 Jan 2015 03:55:23 +0000 (10:55 +0700)]
Merge: Runtime function
Refactor SeparateRuntimeFunction and related services in the separate compiler.
This simplify the compiler and improve the efficiency of the generated code a little.
Before: 0m7.588s
After: 0m7.364s (-3%)
This refactorisation is required for some next PR that will improve polymorphic calls
Pull-Request: #1102
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Alexandre Terrasa [Fri, 16 Jan 2015 18:01:23 +0000 (19:01 +0100)]
nitdoc: does not apply header style to span elements anymore.
Fixes #1108
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Fri, 16 Jan 2015 10:41:59 +0000 (17:41 +0700)]
compiler: --erasure use `virtual_runtime_function` instead of hard-building names
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 14 Jan 2015 05:32:34 +0000 (00:32 -0500)]
compiler: SeparateCompilerVisitor::table_send uses services of virtual_runtime_function
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 14 Jan 2015 05:31:20 +0000 (00:31 -0500)]
compiler: add SeparateRuntimeFunction::c_sig and SeparateRuntimeFunction::c_ret
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 14 Jan 2015 04:58:19 +0000 (23:58 -0500)]
compiler: do not generate specific virtual method if compatible with the original
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 14 Jan 2015 04:30:53 +0000 (23:30 -0500)]
compiler: factorize VirtualRuntimeFunction and SeparateRuntimeFunction
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 16 Jan 2015 10:36:02 +0000 (17:36 +0700)]
Merge: Better Objective-C FFI and cleanup for OS X
This PR opens the way for the iOS platform support.
Two commits may look very similar: "ObjC FFI: import public Objective-C headers for imported modules" and "nitc: fix duplication on imports of public foreign code". They both manage importing headers from other modules so public extern classes may work across module, but one is for Objective-C and the other for C. This service will have to be implemented for other languages too (mostly C++), I'll be looking for a higher level service at that time.
Pull-Request: #1105
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 16 Jan 2015 10:35:39 +0000 (17:35 +0700)]
Merge: GitHub api: Issue events, contributor stats, files
This time it's all about:
* issue events
* contributor stats
* files
Pull-Request: #1104
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Thu, 15 Jan 2015 19:38:15 +0000 (14:38 -0500)]
lib/cocoa/examples: we do not need to import framework headers anymore
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 15 Jan 2015 17:30:23 +0000 (12:30 -0500)]
ObjC FFI: import public Objective-C headers for imported modules
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 15 Jan 2015 16:06:29 +0000 (11:06 -0500)]
ObjC FFI: use bridged cast to store Objective-C objects in pointers
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 15 Jan 2015 16:04:31 +0000 (11:04 -0500)]
nitc: fix duplication on imports of public foreign code
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 14 Jan 2015 16:01:27 +0000 (11:01 -0500)]
lib/glesv2/examples: import sdl only from mnit_linux
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 13 Jan 2015 22:05:21 +0000 (17:05 -0500)]
nitc: move platforms modules to src/platform
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 17 Dec 2014 15:59:46 +0000 (10:59 -0500)]
lib/glesv2: fix ordering and compatibility in uses of glGetActive
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 17 Dec 2014 15:41:03 +0000 (10:41 -0500)]
lib/sdl: fix right and middle mouse button id
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 17 Dec 2014 15:48:00 +0000 (10:48 -0500)]
lib/sdl: add access to texture pixels and alpha mask
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 2 Dec 2014 01:19:14 +0000 (20:19 -0500)]
lib/sdl: intro `grab_input`, `ignore_mouse_motion_events` and fix `show_cursor=`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 4 Dec 2014 18:46:26 +0000 (13:46 -0500)]
lib/c: fix type of index in `NativeCArray::[]`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Wed, 14 Jan 2015 06:07:44 +0000 (01:07 -0500)]
Merge: Do not display test suite modules in Nitdoc
Do not display test suite modules in Nitdoc
Fixes #779
Pull-Request: #1097
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 14 Jan 2015 03:13:38 +0000 (22:13 -0500)]
Merge: Namespace for
Better implementation for `full_name` and `c_name` that make them shorter and use the project as the namespace of public entities.
Examples of fullnames of entities used in messages
* A public class `A` defined in the module `m` of the project `p` was `p::m::A`, now it is `p::A`.
* A public method `x` defined in a class `A` in the module `m` of the project `p` was `p::m::A::x`, now it is `p::A::x`
Exeaple of fullnames for entities that are used internally:
* The refinement of `A` in a module `p::n` was `p::n#p::m::A`, now it is `p::n#A`
* The redefinition of `x` in a class `B` in `p::n` was `p::n#p::m::B#p::m::A::x`, now it is `p::n#B#A::x`
The `c_name` get some comparable simplifications, so C identifiers will be simpler and will less overflow in unwind or in valgrind.
Note: please ignore the first commits that come from #1069
Pull-Request: #1092
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Sat, 10 Jan 2015 03:32:54 +0000 (22:32 -0500)]
tests: update sav/nitunit since fullnames changed in generated files
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 9 Jan 2015 22:30:01 +0000 (17:30 -0500)]
model: implement various c_name and full_name with *namespace_for
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 9 Jan 2015 22:27:37 +0000 (17:27 -0500)]
model: implements MProject::full_name and MProject::c_name
Signed-off-by: Jean Privat <jean@pryen.org>