cpp_ptr<cpp_type_alias> cpp_type_alias::parse(const parser &p, const cpp_name &scope, cpp_cursor cur) { assert(clang_getCursorKind(cur) == CXCursor_TypedefDecl || clang_getCursorKind(cur) == CXCursor_TypeAliasDecl); auto name = detail::parse_name(cur); auto target = parse_alias_target(cur, name); auto result = detail::make_ptr<cpp_type_alias>(scope, std::move(name), detail::parse_comment(cur), clang_getCursorType(cur), target); p.register_type(*result); return result; }