llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang Author: Egor Zhdan (egorzhdan) <details> <summary>Changes</summary> `Tags` can be nested under other `Tags`, which represents nested C++ classes. `Methods` can be nested under `Tags`, which represents C++ methods. rdar://151033780 --- Full diff: https://github.com/llvm/llvm-project/pull/182557.diff 1 Files Affected: - (modified) clang/docs/APINotes.rst (+41) ``````````diff diff --git a/clang/docs/APINotes.rst b/clang/docs/APINotes.rst index 0018e4c883542..8a1018011d023 100644 --- a/clang/docs/APINotes.rst +++ b/clang/docs/APINotes.rst @@ -141,6 +141,47 @@ Each entry under 'Classes' and 'Protocols' can contain "Methods" and PropertyKind: Instance … +Each entry under "Tags" can contain "Methods", "Fields", and nested "Tags" +arrays. Methods under Tags are C++ methods identified by 'Name' (rather than +'Selector' and 'MethodKind' as used for Objective-C methods). + +:Methods (under Tags): + + Identified by 'Name'. + + :: + + Tags: + - Name: MyClass + Methods: + - Name: doSomething + … + +:Fields: + + Identified by 'Name'. + + :: + + Tags: + - Name: MyStruct + Fields: + - Name: value + Nullability: O + … + +:Tags (nested): + + Nested tags follow the same schema as top-level Tags entries. + + :: + + Tags: + - Name: OuterClass + Tags: + - Name: InnerClass + … + Each declaration supports the following annotations (if relevant to that declaration kind), all of which are optional: `````````` </details> https://github.com/llvm/llvm-project/pull/182557 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
