`val get_decl_kind_string : Clang_ast_t.decl ‑> string`
`val get_decl_tuple : Clang_ast_t.decl ‑> Clang_ast_t.decl_info`
`val get_decl_context_tuple : Clang_ast_t.decl ‑> (Clang_ast_t.decl list * Clang_ast_t.decl_context_info) option`
`val get_named_decl_tuple : Clang_ast_t.decl ‑> (Clang_ast_t.decl_info * Clang_ast_t.named_decl_info) option`
`val get_type_decl_tuple : Clang_ast_t.decl ‑> (Clang_ast_t.decl_info * Clang_ast_t.named_decl_info * Clang_ast_t.type_ptr) option`
`val get_tag_decl_tuple : Clang_ast_t.decl ‑> (Clang_ast_t.decl_info * Clang_ast_t.named_decl_info * Clang_ast_t.type_ptr * Clang_ast_t.decl list * Clang_ast_t.decl_context_info * Clang_ast_t.tag_kind) option`
`val get_stmt_kind_string : Clang_ast_t.stmt ‑> string`
`val get_stmt_tuple : Clang_ast_t.stmt ‑> Clang_ast_t.stmt_info * Clang_ast_t.stmt list`
`val get_expr_tuple : Clang_ast_t.stmt ‑> (Clang_ast_t.stmt_info * Clang_ast_t.stmt list * Clang_ast_t.expr_info) option`
`val get_type_tuple : Clang_ast_t.c_type ‑> Clang_ast_t.type_info`
`val update_decl_tuple : (Clang_ast_t.decl_info ‑> Clang_ast_t.decl_info) ‑> Clang_ast_t.decl ‑> Clang_ast_t.decl`
`val update_decl_context_tuple : ((Clang_ast_t.decl list * Clang_ast_t.decl_context_info) ‑> Clang_ast_t.decl list * Clang_ast_t.decl_context_info) ‑> Clang_ast_t.decl ‑> Clang_ast_t.decl`
`val update_named_decl_tuple : ((Clang_ast_t.decl_info * Clang_ast_t.named_decl_info) ‑> Clang_ast_t.decl_info * Clang_ast_t.named_decl_info) ‑> Clang_ast_t.decl ‑> Clang_ast_t.decl`
`val update_type_decl_tuple : ((Clang_ast_t.decl_info * Clang_ast_t.named_decl_info * Clang_ast_t.type_ptr) ‑> Clang_ast_t.decl_info * Clang_ast_t.named_decl_info * Clang_ast_t.type_ptr) ‑> Clang_ast_t.decl ‑> Clang_ast_t.decl`
`val update_tag_decl_tuple : ((Clang_ast_t.decl_info * Clang_ast_t.named_decl_info * Clang_ast_t.type_ptr * Clang_ast_t.decl list * Clang_ast_t.decl_context_info * Clang_ast_t.tag_kind) ‑> Clang_ast_t.decl_info * Clang_ast_t.named_decl_info * Clang_ast_t.type_ptr * Clang_ast_t.decl list * Clang_ast_t.decl_context_info * Clang_ast_t.tag_kind) ‑> Clang_ast_t.decl ‑> Clang_ast_t.decl`
`val update_stmt_tuple : ((Clang_ast_t.stmt_info * Clang_ast_t.stmt list) ‑> Clang_ast_t.stmt_info * Clang_ast_t.stmt list) ‑> Clang_ast_t.stmt ‑> Clang_ast_t.stmt`
`val update_expr_tuple : ((Clang_ast_t.stmt_info * Clang_ast_t.stmt list * Clang_ast_t.expr_info) ‑> Clang_ast_t.stmt_info * Clang_ast_t.stmt list * Clang_ast_t.expr_info) ‑> Clang_ast_t.stmt ‑> Clang_ast_t.stmt`
`val is_valid_binop_kind_name : string ‑> bool`
`val is_valid_unop_kind_name : string ‑> bool`
`val string_of_binop_kind : Clang_ast_t.binary_operator_kind ‑> string`
`val string_of_unop_kind : Clang_ast_t.unary_operator_kind ‑> string`
`val is_valid_astnode_kind : string ‑> bool`
`val string_of_cast_kind : Clang_ast_t.cast_kind ‑> string`
`val get_cast_kind : Clang_ast_t.stmt ‑> Clang_ast_t.cast_kind option`