-
- pub fn meta_list_item_word(&self, sp: Span, w: ast::Name) -> ast::NestedMetaItem {
- attr::mk_nested_word_item(Ident::new(w, sp))
- }
-
- pub fn meta_list(&self, sp: Span, name: ast::Name, mis: Vec<ast::NestedMetaItem>)
- -> ast::MetaItem {
- attr::mk_list_item(Ident::new(name, sp), mis)
- }
-
- pub fn meta_name_value(&self, span: Span, name: ast::Name, lit_kind: ast::LitKind)
- -> ast::MetaItem {
- attr::mk_name_value_item(Ident::new(name, span), lit_kind, span)
- }
-
- pub fn item_use(&self, sp: Span,
- vis: ast::Visibility, vp: P<ast::UseTree>) -> P<ast::Item> {
- P(ast::Item {
- id: ast::DUMMY_NODE_ID,
- ident: Ident::invalid(),
- attrs: vec![],
- node: ast::ItemKind::Use(vp),
- vis,
- span: sp,
- tokens: None,
- })
- }
-
- pub fn item_use_simple(&self, sp: Span, vis: ast::Visibility, path: ast::Path) -> P<ast::Item> {
- self.item_use_simple_(sp, vis, None, path)
- }
-
- pub fn item_use_simple_(&self, sp: Span, vis: ast::Visibility,
- rename: Option<ast::Ident>, path: ast::Path) -> P<ast::Item> {
- self.item_use(sp, vis, P(ast::UseTree {
- span: sp,
- prefix: path,
- kind: ast::UseTreeKind::Simple(rename, ast::DUMMY_NODE_ID, ast::DUMMY_NODE_ID),
- }))
- }
-
- pub fn item_use_list(&self, sp: Span, vis: ast::Visibility,
- path: Vec<ast::Ident>, imports: &[ast::Ident]) -> P<ast::Item> {
- let imports = imports.iter().map(|id| {
- (ast::UseTree {
- span: sp,
- prefix: self.path(sp, vec![*id]),
- kind: ast::UseTreeKind::Simple(None, ast::DUMMY_NODE_ID, ast::DUMMY_NODE_ID),
- }, ast::DUMMY_NODE_ID)
- }).collect();
-
- self.item_use(sp, vis, P(ast::UseTree {
- span: sp,
- prefix: self.path(sp, path),
- kind: ast::UseTreeKind::Nested(imports),
- }))
- }
-
- pub fn item_use_glob(&self, sp: Span,
- vis: ast::Visibility, path: Vec<ast::Ident>) -> P<ast::Item> {
- self.item_use(sp, vis, P(ast::UseTree {
- span: sp,
- prefix: self.path(sp, path),
- kind: ast::UseTreeKind::Glob,
- }))
- }