Commit Graph
81 Commits
Author SHA1 Message Date
José Valim e476a5ef0d Stab at new syntax 2012-05-13 15:33:57 +02:00
José Valim b336b2d463 Small fixes in the docs 2012-05-08 13:33:43 +02:00
José Valim d297d2c768 Rename elixir_kv_block to elixir_kw_block, closes #270 2012-04-29 13:40:52 +02:00
José Valim e7aa86aa58 Improve protocol handling 2012-04-26 14:02:09 +02:00
José Valim 747b0be9c4 Keywords can have duplicated entries, but still quack as a dict, closes #262 2012-04-25 11:01:14 +02:00
José Valim ffa5c3964d Provide a new protocol API, closes #251 2012-04-25 09:19:55 +02:00
José Valim e53406d3cd Tidy up and rename __protocol_for__ to __impl_for__, related to #250 2012-04-24 20:44:39 +02:00
José Valim 7c26b215c7 Add __protocol_for__ that returns the protocol that matches the given structure, related to #250 2012-04-24 20:33:43 +02:00
José Valim d0e0e275be Add __info__(:functions) and __info__(:macros) to retrieve module info at runtime. 2012-04-23 10:59:01 +02:00
José Valim 2851da4186 Ensure protocol functions with more than one arity works, closes #247 2012-04-13 10:18:03 -03:00
Dickson S. Guedes e68a2ed13e refactoring some code
since atom_to_binary, binary_to_atom uses UTF* as default
we could refactor some code.
2012-04-09 16:58:40 -03:00
José Valim 3cad19dbeb Move Module.eval_quoted to the new API. 2012-04-03 19:06:56 -03:00
José Valim 96f26c9299 Rename Orddict to Keyword, closes #216. 2012-04-01 16:10:31 +02:00
José Valim 23a5662052 Ensure we don't accidentally dispatch to protocols based on tuples. 2012-03-29 11:16:29 +02:00
José Valim 1230f86e7c Remove automatic aliases from defmodule. 2012-03-25 22:29:41 +02:00
José Valim 5249519ac9 Ensure protocol is properly concatenated. 2012-03-25 21:54:33 +02:00
José Valim c5be874751 Remove support to ::, down to 16 failures. 2012-03-25 21:35:49 +02:00
José Valim d979c7babc Down to 23 failures. 2012-03-25 21:25:24 +02:00
José Valim d815788c52 Compile files using . and inside __MAIN__ 2012-03-25 18:48:20 +02:00
José Valim 5f36ccafd8 Provide a more robust solution for protocol handling. 2012-03-07 14:32:09 +01:00
José Valim bad6c2e313 Improve protocols in order to avoid false positives, closes #146 2012-03-07 10:33:07 +01:00
José Valim 69101c1159 Do not expose erlang's element and setelement in favor of elem and setelem. 2012-02-27 11:19:38 +01:00
José Valim a217b259bb Add tests for handling super. 2012-02-25 17:01:02 +01:00
José Valim db93ebb9ad Remove orelse and andalso in favor of only and and or. 2012-02-23 09:48:47 +01:00
José Valim f7f2b69f97 Add List.wrap, ensure __protocol_for__ doesn't fail. 2012-02-18 17:15:48 +01:00
José Valim 1621a38293 Automatically require module definitions in the same lexical context. 2012-02-18 11:27:27 +01:00
José Valim 6f4dd3a1de Fix ambiguity in the parser and improve errors for missing implementations. 2012-02-15 14:01:34 +01:00
José Valim d3019e5662 Do not automatically include any in the protocol. 2012-02-15 13:27:39 +01:00
José Valim d42b952e99 Include a Record segment in Protocols. 2012-02-12 08:57:39 +01:00
José Valim d88b9813ba Allow records with dynamic names. 2012-02-09 10:22:43 +01:00
José Valim 7a736a4da6 Evaluate record values just once. 2012-02-09 08:49:46 +01:00
José Valim 39b1442ffb Clean up function syntax. 2012-02-06 23:28:48 +01:00
José Valim 41d2a7f87e Revert "Rename tuples { 1, 2, 3 } to %{ 1, 2, 3 } to remove ambiguity."
This reverts commit 20f524dae2.
2012-02-06 22:46:24 +01:00
José Valim 20f524dae2 Rename tuples { 1, 2, 3 } to %{ 1, 2, 3 } to remove ambiguity. 2012-02-06 16:39:55 +01:00
José Valim 82eda392b3 Use new exceptions control schema in lib. 2012-02-05 13:00:13 +01:00
José Valim d002248139 Move lib code to the new exception handling format. 2012-02-05 12:08:18 +01:00
José Valim f799fce0ec Merge import and require, get rid of refer. 2012-01-22 18:53:32 +01:00
José Valim 1db19bb17d Modules and files are compiled before evaluated. 2012-01-22 09:39:35 +01:00
José Valim a8543df903 Revert "Remove noref, disallow dynamic module names."
This reverts commit f506603ba2.
2012-01-21 21:44:40 +01:00
José Valim f506603ba2 Remove noref, disallow dynamic module names. 2012-01-21 21:30:16 +01:00
José Valim 816193cfe8 Use __info__ instead of module_info. 2012-01-21 13:08:56 +01:00
José Valim ee2c03217e Revert "Get rid of defp in favor of data and @visibility :private."
This reverts commit 20e4b3a5f9.
2012-01-20 22:55:03 +01:00
José Valim 20e4b3a5f9 Get rid of defp in favor of data and @visibility :private. 2012-01-20 19:42:23 +01:00
José Valim 74a42124b3 Define defdelegate. 2012-01-18 18:48:56 +01:00
José Valim 9c08bdbe4d Improve docs and tests for Orddict and List, closes #71 2012-01-18 15:16:53 +01:00
José Valim 8387677a6d Do not merge kv-args and kv-blocks, #100 2012-01-18 12:43:41 +01:00
José Valim c6176548d2 Rename Orddict.fetch -> Orddict.get. 2012-01-16 22:18:59 +01:00
José Valim eca3bcc5b0 Discourage module nesting, closes #101 2012-01-15 21:06:12 +01:00
José Valim 4ca8ce74ef Rename unquote_splice -> unquote_splicing, closes #96 2012-01-15 14:52:53 +01:00
José Valim c5405da00d Rename for and bitfor to lc and bc. 2012-01-15 14:35:00 +01:00