ffi: update code with last syntax

use `extern class` and dotted notation for extern call and casts.

Signed-off-by: Jean Privat <jean@pryen.org>
syntax: remove last usages of `=` in one liner function

This optional syntax is largely unused and no so KISS.
I will drop it in a future grammar.

Signed-off-by: Jean Privat <jean@pryen.org>
lib: remove usage of old-style getters and setters

old-style attributes are still available but getters and setters are manual.
This encourage the use of new-style attributes.

Support for old style attributes will be removed eventually.

Signed-off-by: Jean Privat <jean@pryen.org>
tests: remove usage of old-style getters and setters

Signed-off-by: Jean Privat <jean@pryen.org>
parser: add 'public' keyword

to reserve it :)

Signed-off-by: Jean Privat <jean@pryen.org>
parser: parentheses in `.as` are optional

Signed-off-by: Jean Privat <jean@pryen.org>
parser: allow top-level methods between class definitions

Signed-off-by: Jean Privat <jean@pryen.org>
parser: disable unused `=` shortcut for functions

So simplify the grammar.

Signed-off-by: Jean Privat <jean@pryen.org>
parser: force new style FFI in syntax.

`extern class` + dotted extern call notations.

Signed-off-by: Jean Privat <jean@pryen.org>
parser: split `AIntExpr` and `ADecIntExpr`

next commit will introduce AHexIntExpr

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

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

Signed-off-by: Jean Privat <jean@pryen.org>
src: remove old-style attribute from src/ (except parser)

Signed-off-by: Jean Privat <jean@pryen.org>
tests: remove `base_return_assing`

The syntax is removed

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

Lot of cleanup and modernization in the syntax of Nit

* depreciate old FFI syntax: `extern` without `class` and non-dotted extern notation (quad or space)
* reduce the usage of old style getters and setters (they will be disabled soon)
* remove the shortcut `=` for one-liner function
* hexadecimal literals `var x = 0x7F`

Conflicts: lib/jvm.nit
Pull-Request: #401
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>