AIDL: restrict visibility of internals

Using these APIs would freeze the internal
structure of the AIDL compiler, which would
restrict development here and is strictly not
required to do anything. It's always possible
not to do this and use the other surfaces
AIDL maintains instead.

The API surfaces that AIDL maintains are:
- (squishy) the .aidl files themselves
- (squishy) the backend generated runtime APIs
- (absolute) backcompat over the wire for stable
  AIDL interfaces, or for unchanged AIDL interfaces

The first two there are listed as 'squishy'. It means
that these can be changed without breaking any real
Android systems (only requiring client code to
be updated). We typically do keep these constant,
but in some cases, especially where there are few
known clients, we can make minor changes. One example
(perhaps the most extreme example I can recall) of
this was switching unique_fd to be an rr-value in
the C++ backend for performance reasons.

Bug: N/A
Test: N/A
Change-Id: I94f218cbd5b7fbeb3dc1c487ccf3b3e9697d2854
1 file changed
tree: 7455c097f3ca9f69e83c5cb6a6cd450e326dc960
  1. aidl_api/
  2. analyzer/
  3. build/
  4. metadata/
  5. scripts/
  6. tests/
  7. trace/
  8. aidl-format.sh
  9. aidl.cpp
  10. aidl.h
  11. aidl_checkapi.cpp
  12. aidl_checkapi.h
  13. aidl_const_expressions.cpp
  14. aidl_dumpapi.cpp
  15. aidl_dumpapi.h
  16. aidl_language.cpp
  17. aidl_language.h
  18. aidl_language_l.ll
  19. aidl_language_y.yy
  20. aidl_to_cpp.cpp
  21. aidl_to_cpp.h
  22. aidl_to_cpp_common.cpp
  23. aidl_to_cpp_common.h
  24. aidl_to_java.cpp
  25. aidl_to_java.h
  26. aidl_to_ndk.cpp
  27. aidl_to_ndk.h
  28. aidl_to_rust.cpp
  29. aidl_to_rust.h
  30. aidl_typenames.cpp
  31. aidl_typenames.h
  32. aidl_unittest.cpp
  33. Android.bp
  34. ast_java.cpp
  35. ast_java.h
  36. ast_java_unittest.cpp
  37. check_valid.cpp
  38. check_valid.h
  39. code_writer.cpp
  40. code_writer.h
  41. code_writer_unittest.cpp
  42. comments.cpp
  43. comments.h
  44. diagnostics.cpp
  45. diagnostics.h
  46. diagnostics.inc
  47. diagnostics_unittest.cpp
  48. generate_aidl_mappings.cpp
  49. generate_aidl_mappings.h
  50. generate_cpp.cpp
  51. generate_cpp.h
  52. generate_cpp_analyzer.cpp
  53. generate_cpp_analyzer.h
  54. generate_cpp_unittest.cpp
  55. generate_java.cpp
  56. generate_java.h
  57. generate_java_binder.cpp
  58. generate_ndk.cpp
  59. generate_ndk.h
  60. generate_rust.cpp
  61. generate_rust.h
  62. hiddenapi-greylist
  63. import_resolver.cpp
  64. import_resolver.h
  65. io_delegate.cpp
  66. io_delegate.h
  67. io_delegate_unittest.cpp
  68. location.cpp
  69. location.h
  70. logging.cpp
  71. logging.h
  72. main.cpp
  73. NOTICE
  74. options.cpp
  75. options.h
  76. options_unittest.cpp
  77. os.h
  78. OWNERS
  79. parser.cpp
  80. parser.h
  81. permission.cpp
  82. permission.h
  83. preprocess.cpp
  84. preprocess.h
  85. PREUPLOAD.cfg
  86. README.md
  87. run_integration_tests.sh
  88. TEST_MAPPING
README.md

Documentation for this project is currently maintained here:

https://source.android.com/devices/architecture/aidl/overview