4 use rustc_span
::source_map
::respan
;
5 use rustc_span
::symbol
::Ident
;
6 use rustc_span
::with_default_session_globals
;
10 header
: ast
::FnHeader
,
12 generics
: &ast
::Generics
,
16 s
.print_fn(decl
, header
, Some(name
), generics
);
17 s
.end(); // Close the head box.
18 s
.end(); // Close the outer box.
22 fn variant_to_string(var
: &ast
::Variant
) -> String
{
23 to_string(|s
| s
.print_variant(var
))
27 fn test_fun_to_string() {
28 with_default_session_globals(|| {
29 let abba_ident
= Ident
::from_str("abba");
32 ast
::FnDecl { inputs: Vec::new(), output: ast::FnRetTy::Default(rustc_span::DUMMY_SP) }
;
33 let generics
= ast
::Generics
::default();
35 fun_to_string(&decl
, ast
::FnHeader
::default(), abba_ident
, &generics
),
42 fn test_variant_to_string() {
43 with_default_session_globals(|| {
44 let ident
= Ident
::from_str("principal_skinner");
46 let var
= ast
::Variant
{
48 vis
: respan(rustc_span
::DUMMY_SP
, ast
::VisibilityKind
::Inherited
),
50 id
: ast
::DUMMY_NODE_ID
,
51 data
: ast
::VariantData
::Unit(ast
::DUMMY_NODE_ID
),
53 span
: rustc_span
::DUMMY_SP
,
54 is_placeholder
: false,
57 let varstr
= variant_to_string(&var
);
58 assert_eq
!(varstr
, "principal_skinner");