Kim Shrier
54d74efa04
Update octal and hex escapes for characters, char lists, and strings to all accept
...
the same syntax and be case insensitive. Also relocated the character type macros
into lib/elixir/include/elixir.hrl so that they didn't need to be defined in both
lib/elixir/src/elixir_interpolation.erl and lib/elixir/src/elixir_tokenizer.erl.
Added to the erlang and elixir unit tests to test the new syntax.
2012-12-23 20:05:23 -07:00
Kim Shrier
d23cc079ad
add octal and hex escapes for characters
2012-12-22 03:16:12 -07:00
José Valim
ea1a79a156
Merge pull request #730 from kimshrier/case_insensitive_hex_interpolation
...
add code and tests for case insensitive hex interpolation.
2012-12-22 00:39:22 -08:00
Kim Shrier
d5613ed380
add code and tests for case insensitive hex interpolation.
2012-12-21 23:32:01 -07:00
mururu
3e2172e646
modify atom with interpolation tokenizer
2012-12-22 14:46:43 +09:00
José Valim
c810b4ba82
Fix bootstrap files order
2012-12-17 09:58:52 +01:00
José Valim
305ad0b9c0
Support else clauses on try
2012-12-16 22:03:49 +01:00
José Valim
16d0ce6273
Support << "string" :: utf8 >> as in Erlang, closes #700
2012-12-10 09:39:10 +01:00
José Valim
b88efc43c3
Explicitly support file in quote
2012-12-06 13:34:49 +01:00
José Valim
290b0ef894
:... is a valid atom, closes #697
2012-12-06 09:23:24 +01:00
José Valim
5d27b21ca8
Bump to 0.7.3.dev and get rid of deprecations
2012-12-05 09:46:07 +01:00
José Valim
a629fdac0d
Document the record access rewrite feature
2012-12-03 11:35:34 +01:00
José Valim
c7f67bc52a
Rewrite records accessors when possible
2012-12-03 11:19:51 +01:00
José Valim
82cf622e9b
Enable record rewriter inference
2012-12-03 00:47:34 +01:00
José Valim
498ac849fb
Record rewriting works with case clauses
2012-12-02 23:37:53 +01:00
José Valim
c06a44c2fd
Add Macro.extract_args, closes #677
2012-12-02 16:10:46 +01:00
José Valim
fc03c8b43d
Get rid of unused compilation mode
2012-12-02 14:32:36 +01:00
José Valim
b32f6ef51f
Keep variables in a single dictionary
...
This ensures we give the same treatment to quoted
and non-quoted variables.
2012-12-02 12:22:10 +01:00
José Valim
a061528731
Ensure IEx runs only after Elixir's CLI process its options
2012-11-30 17:07:12 +01:00
Yurii Rashkovskii
486cb79fab
Store @specs in the order they were specified in the source code
2012-11-30 04:47:43 -08:00
José Valim
f249eab01e
Ensure parenthesis are allowed in call args
2012-11-29 23:58:25 +01:00
José Valim
ced5a4386b
Support -> inside parenthesis
...
This is consistent with the fact that do...end
is a direct translation to do: (...).
2012-11-29 23:47:53 +01:00
José Valim
e11285007e
More work on improved typespec syntax
2012-11-29 14:13:26 +01:00
Yurii Rashkovskii
b8d16dae6f
elixir_code_server should not trap exits and should not log on terminate
2012-11-28 18:51:42 -08:00
José Valim
b25d5f27d7
Ensure IEx boots fast and with Elixir available, closes #673
2012-11-28 23:19:00 +01:00
José Valim
b9e5e490cd
Do not add lines to __info__ function
2012-11-28 11:57:57 +01:00
José Valim
956773ee7e
Make ExUnit exit happen in two steps.
...
This allows developers to hook custom mechanisms
after the tests are run but before the system halts.
2012-11-28 11:57:38 +01:00
José Valim
401ad781c3
Ensure debug_info is actually set to true
2012-11-28 09:48:04 +01:00
José Valim
4227d94603
Support \xXX and \x{HEX} escape sequences in strings and char lists
...
It implements the same behaviour as seen in regexes. Closes #661 .
2012-11-27 15:50:45 +01:00
Yurii Rashkovskii
e174cbfbfe
Add function(Module.fun/arity) and function(fun/arity) syntax
...
These are equivalent to function(Module, :fun, arity) and function(:fun, arity) constructs, respectively
2012-11-27 01:35:06 -08:00
José Valim
9a7bdc158a
Speed up native compilation by skipping it in the bootstrap process
2012-11-25 19:09:55 +01:00
José Valim
5e26cd01b6
Improve error message when invalid token is followed by new line
2012-11-25 17:26:47 +01:00
José Valim
9f16178898
Raise an error if clauses with different arities are defined in the same function, closes #657
2012-11-25 17:01:54 +01:00
José Valim
7ddab53707
Also allow multiclause functions on fn
...
The function macro is still necessary for function
retrieval and it will be extended when R16 is out
to supported named functions
2012-11-25 00:06:39 +01:00
José Valim
05e694f7e2
Improvements to Regex and String
2012-11-24 21:56:58 +01:00
José Valim
71837bfbf0
Show warning if a rescue clause can never match, closes #641
2012-11-24 12:55:28 +01:00
José Valim
e801cbd380
Convert integer to a list in order to generate the module name
2012-11-16 09:50:13 +01:00
José Valim
ad37d5f67a
No need for lists:concat
2012-11-15 16:56:29 +01:00
José Valim
40efeb48d7
Reduce atom footprint when compiling code
...
Previously, we were generating atom names based on
the file or the module name. This commit replaces
it by a pool of atom names. After a module name
is used and purged with success, it is added back
to the pool so it can be reused many times.
2012-11-15 16:44:27 +01:00
José Valim
c3b58eef16
file needs to be a binary
2012-11-15 16:30:55 +01:00
José Valim
32764b3370
Copy all __ENV__ information on eval
2012-11-15 10:01:18 +01:00
José Valim
743213d8c1
halt was moved to System module
...
`halt` is a function that is less frequently used than the other
functions in Kernel, not allowed in guard clauses and its outcome
is to shutdown the whole runtime, being a great fit to the System
module.
2012-11-13 09:23:21 +01:00
José Valim
c0a42c95e0
Do not print warnings for injected private macros
2012-11-10 12:30:24 +01:00
José Valim
ce489eae2b
Only allow () under special circunstances
2012-11-08 16:00:16 +01:00
José Valim
02e63e4849
Ensure parenthesis can be used in macros and fn shortcut, closes #634
2012-11-08 15:52:52 +01:00
José Valim
52a5f5c9c9
Generate a proper clause var name
2012-11-06 10:19:23 +01:00
José Valim
1ae30a56e2
Do not name quoted variables
2012-11-06 09:54:17 +01:00
José Valim
e9334fb7dc
Tidy up Typespec API, improve docs
2012-11-05 14:51:51 +01:00
José Valim
ec68b7dd8a
Compile specs and callbacks to @spec and @callback so they are easier to access
2012-11-05 10:26:02 +01:00
José Valim
1113d3cfc9
Add support to record_type in defrecord
...
Closes #613
Closes #452
2012-11-05 09:14:07 +01:00