AidlCommentable represents AIDL-commentable entities

Because the parser uses GetComments/SetComments to move comments around, even
syntactically non-commentable nodes can have comments temporarily. Those types'
inheriting AidlCommentable doesn't make sense. We'd like to model classes to
reflect what entities are really commentable in AIDL.

This change pulls up GetComments/SetComments to AidlNode and makes
AidlCommentable a base class for AIDL-commentable nodes. AidlCommentable
provides IsHidden/IsDeprecated/DumpComments.

Now AidlCommentable types are:
  - AidlAnnotatable
    - AidlTypeSpecifier
    - AidlDefinedType
      - AidlInterface
      - AidlParcelable
        - AidlStructuredParacelable
        - AidlUnionDecl
      - AidlEnumDeclaration
  - AidlMember
    - AidlVarialbeDeclaration
    - AidlMethod
    - AidlConstantDeclartion
  - AidlEnumerator
  - AidlDocument

Bug: none
Test: aidl_unittests
Change-Id: Ie4dbd12cdc08e9fafcf59c04da588eae18685727
2 files changed