画布 1
syntax
  syntax
    parse_input
      parse::parse_crate_from_file
    format_ast
      modules::list_files
      format_separate_mod
        walk_mod_items
          while !items_left.is_empty
          visit_item
            format_struct
            format_mod
            visit_fn
              rewrite_fn
                rewrite_fn_base
                拿到fn头
              visit_block
                for stmt in &b.stmts
                visit_stmt
                  Item
                  Local
                  Expr
                    format_expr
                      Vec
                      Block
                      Call
                      Break
                  Semi
                  Mac
  curd
    当前的行为，默认的行为，动态配置的行为
    insert
      cascade_insert_pointer
      insert_self
      cascade_insert_one_one
      cascade_insert_one_many
    update
    delete
    cascade_insert_pointer(a,b)
      insert(b)
      a.set_pointer(b)
    cascade_insert_one_one
    cascade_insert_one_many
    cascade_insert_many_many
    cascade_update_pointer
    cascade_update_one_one
    cascade_update_one_many
    cascade_update_many_many
    cascade_delete_pointer
    cascade_delete_one_one
    cascade_delete_one_many
    cascade_delete_many_many
  set
    pointer
      set_poiner
      a.b_id = b.id
      a.b = b
    one_one
      set_one_one
      b.a_id = a.id
      a.b = b
    one_many
      push_one_many
      b.a_id= a.id
      push(b)
    many_many
      push_many_many
      m.a_id = a.id
      m.b_id = b.id
      push(b)
  clear
    pointer
      clear_pointer
      a.b_id = NULL
      a.b = None
    one_one
      clear_one_one
      old_b.a_id = NULL
      a.b = None
    one_many
      子主题 1
    many_many