Commit Graph
421 Commits
Author SHA1 Message Date
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