1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
//! Structural editing for ast. use crate::{ AstNode, ast::{self, make}, ted, }; impl ast::Impl { pub fn get_or_create_assoc_item_list(&self) -> ast::AssocItemList { if self.assoc_item_list().is_none() { let assoc_item_list = make::assoc_item_list(None).clone_for_update(); ted::append_child(self.syntax(), assoc_item_list.syntax()); } self.assoc_item_list().unwrap() } }