about summary refs log tree commit diff
path: root/src/libsyntax/ext/ident_to_str.rs
blob: ededc1a5f7ffc7263ce106884e8852b79ae1da9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Copyright 2012 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution and at
// http://rust-lang.org/COPYRIGHT.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.

use base::*;
use build::mk_uniq_str;

fn expand_syntax_ext(cx: ext_ctxt, sp: codemap::span, arg: ast::mac_arg,
                     _body: ast::mac_body) -> @ast::expr {
    let args = get_mac_args(cx,sp,arg,1u,option::Some(1u),~"ident_to_str");

    return mk_uniq_str(cx, sp, *cx.parse_sess().interner.get(
        expr_to_ident(cx, args[0u], ~"expected an ident")));
}