diff options
| author | Andrew Paseltiner <apaseltiner@gmail.com> | 2013-03-20 11:50:28 -0400 |
|---|---|---|
| committer | Andrew Paseltiner <apaseltiner@gmail.com> | 2013-03-22 07:15:13 -0400 |
| commit | 999e7ef9a97431d2c40ebe09cf27ea7a3e80de40 (patch) | |
| tree | 84c32ee97cbc8fc5e1a709aced4a2f29e046c3fa /src/libsyntax | |
| parent | e2abecd3ab406ce447a8b23c8a7563e9c455f870 (diff) | |
| download | rust-999e7ef9a97431d2c40ebe09cf27ea7a3e80de40.tar.gz rust-999e7ef9a97431d2c40ebe09cf27ea7a3e80de40.zip | |
syntax: make old `#[deriving_foo]` attribute obsolete
Diffstat (limited to 'src/libsyntax')
| -rw-r--r-- | src/libsyntax/ext/base.rs | 6 | ||||
| -rw-r--r-- | src/libsyntax/ext/deriving/clone.rs | 9 | ||||
| -rw-r--r-- | src/libsyntax/ext/deriving/eq.rs | 9 | ||||
| -rw-r--r-- | src/libsyntax/ext/deriving/iter_bytes.rs | 10 |
4 files changed, 31 insertions, 3 deletions
diff --git a/src/libsyntax/ext/base.rs b/src/libsyntax/ext/base.rs index 34e4d8c73e7..50f89d37fae 100644 --- a/src/libsyntax/ext/base.rs +++ b/src/libsyntax/ext/base.rs @@ -153,13 +153,13 @@ pub fn syntax_expander_table() -> SyntaxEnv { ext::deriving::expand_meta_deriving))); syntax_expanders.insert(@~"deriving_eq", @SE(ItemDecorator( - ext::deriving::eq::expand_deriving_eq))); + ext::deriving::eq::expand_deriving_obsolete))); syntax_expanders.insert(@~"deriving_iter_bytes", @SE(ItemDecorator( - ext::deriving::iter_bytes::expand_deriving_iter_bytes))); + ext::deriving::iter_bytes::expand_deriving_obsolete))); syntax_expanders.insert(@~"deriving_clone", @SE(ItemDecorator( - ext::deriving::clone::expand_deriving_clone))); + ext::deriving::clone::expand_deriving_obsolete))); // Quasi-quoting expanders syntax_expanders.insert(@~"quote_tokens", diff --git a/src/libsyntax/ext/deriving/clone.rs b/src/libsyntax/ext/deriving/clone.rs index 072cd0f6c39..4ab83cb5f1e 100644 --- a/src/libsyntax/ext/deriving/clone.rs +++ b/src/libsyntax/ext/deriving/clone.rs @@ -39,6 +39,15 @@ pub fn expand_deriving_clone(cx: @ext_ctxt, expand_deriving_clone_enum_def) } +pub fn expand_deriving_obsolete(cx: @ext_ctxt, + span: span, + _mitem: @meta_item, + in_items: ~[@item]) + -> ~[@item] { + cx.span_err(span, ~"`#[deriving_clone]` is obsolete; use `#[deriving(Clone)]` instead"); + in_items +} + fn create_derived_clone_impl(cx: @ext_ctxt, span: span, type_ident: ident, diff --git a/src/libsyntax/ext/deriving/eq.rs b/src/libsyntax/ext/deriving/eq.rs index 6213eeca134..5e94134f70a 100644 --- a/src/libsyntax/ext/deriving/eq.rs +++ b/src/libsyntax/ext/deriving/eq.rs @@ -53,6 +53,15 @@ pub fn expand_deriving_eq(cx: @ext_ctxt, expand_deriving_eq_enum_def) } +pub fn expand_deriving_obsolete(cx: @ext_ctxt, + span: span, + _mitem: @meta_item, + in_items: ~[@item]) + -> ~[@item] { + cx.span_err(span, ~"`#[deriving_eq]` is obsolete; use `#[deriving(Eq)]` instead"); + in_items +} + /// Creates a method from the given expression, the signature of which /// conforms to the `eq` or `ne` method. fn create_eq_method(cx: @ext_ctxt, diff --git a/src/libsyntax/ext/deriving/iter_bytes.rs b/src/libsyntax/ext/deriving/iter_bytes.rs index 613e9c295eb..75d7b396c7e 100644 --- a/src/libsyntax/ext/deriving/iter_bytes.rs +++ b/src/libsyntax/ext/deriving/iter_bytes.rs @@ -39,6 +39,16 @@ pub fn expand_deriving_iter_bytes(cx: @ext_ctxt, expand_deriving_iter_bytes_enum_def) } +pub fn expand_deriving_obsolete(cx: @ext_ctxt, + span: span, + _mitem: @meta_item, + in_items: ~[@item]) + -> ~[@item] { + cx.span_err(span, ~"`#[deriving_iter_bytes]` is obsolete; use `#[deriving(IterBytes)]` \ + instead"); + in_items +} + fn create_derived_iter_bytes_impl(cx: @ext_ctxt, span: span, type_ident: ident, |
