# keywords
" parcelable "
" import "
" package "
" in "
" out "
" inout "
" cpp_header "
" ndk_header "
" const "
" true "
" false "
" interface "
" oneway "
" enum "
" union "

# types
" void "
" boolean "
" byte "
" char "
" int "
" long "
" float "
" double "
" String "
" List "
" List< "
" Map "
" Map< "
" IBinder "
" FileDescriptor "
" CharSequence "
" ParcelFileDescriptor "
" java.util.List "
" java.util.List< "
" java.util.Map "
" java.util.Map< "
" android.os.ParcelFileDescriptor "
" ParcelableHolder "
" > "

# annotations
" @nullable "
" @utf8InCpp "
" @VintfStability "
" @SensitiveData "
" @UnsupportedAppUsage "
" @SystemApi "
" @JavaPassthrough "
" @JavaOnlyStableParcelable "
" @NdkOnlyStableParcelable "
" @Backing "
" @FixedSize "
" @Descriptor "
" @JavaDervie "
" @RustDerive "
" /** @hide */ "
" /** @deprecated reason */ "

# annotation arguments
" value "
" toString "
" expectedSignature "
" implicitMember "
" maxTargetSdk "
" publicAlternatives "
" trackingBug "
" type "
" Copy "
" Clone "
" PartialOrd "
" Ord "
" PartialEq "
" Eq "
" Clone "
" Hash "

# ignorable imports
" android.os.IInterface "
" android.os.IBinder "
" android.os.Parcelable "
" android.os.Parcel "
" android.content.Context "
" java.lang.String "

# specific to fuzzer
" a.path "
" b.path "
" Foo "
" a/path/Foo.aidl "
" b/path/Foo.aidl "
" path/Foo.aidl "

#arguments
" aidl "
" --apimapping "
" --checkapi=compatible "
" --checkapi=equal "
" --hash "
" --help "
" --lang=java "
" --lang=ndk "
" --lang=ndk "
" --lang=rust "
" --log "
" --ninja "
" --preprocess "
" --stability "
" --stability=vintf "
" --structured "
" --trace "
" --transaction_names "
" -I "
" -W "
" -Werror "
" -Weverything "
" -Wno- "
" -Wno-error "
" -a "
" -b "
" -d "
" -h "
" -o "
" -p "
" -t "
" -v "
" -w "
