@@ -680,6 +680,23 @@ args = "horizontal"
680680# default: nothing is emitted for must_use functions
681681must_use = " MUST_USE_FUNC"
682682
683+ # An optional string that should prefix function declarations which have been
684+ # marked as `#[deprecated]` without note. For instance, "__attribute__((deprecated))"
685+ # would be a reasonable value if targeting gcc/clang. A more portable solution
686+ # would involve emitting the name of a macro which you define in a
687+ # platform-specific way. e.g. "DEPRECATED_FUNC"
688+ # default: nothing is emitted for deprecated functions
689+ deprecated = " DEPRECATED_FUNC"
690+
691+ # An optional string that should prefix function declarations which have been
692+ # marked as `#[deprecated(note = "reason")]`. `{}` will be replaced with the
693+ # double-quoted string. For instance, "__attribute__((deprecated({})))"
694+ # would be a reasonable value if targeting gcc/clang. A more portable solution
695+ # would involve emitting the name of a macro which you define in a
696+ # platform-specific way. e.g. "DEPRECATED_FUNC_WITH_NOTE(note)"
697+ # default: nothing is emitted for deprecated functions
698+ deprecated_with_notes = " DEPRECATED_FUNC_WITH_NOTE"
699+
683700# An optional string that will be used in the attribute position for functions
684701# that don't return (that return `!` in Rust).
685702#
@@ -752,6 +769,23 @@ rename_fields = "PascalCase"
752769# default: nothing is emitted for must_use structs
753770must_use = " MUST_USE_STRUCT"
754771
772+ # An optional string that should come before the name of any struct which has been
773+ # marked as `#[deprecated]` without note. For instance, "__attribute__((deprecated))"
774+ # would be a reasonable value if targeting gcc/clang. A more portable solution
775+ # would involve emitting the name of a macro which you define in a
776+ # platform-specific way. e.g. "DEPRECATED_STRUCT"
777+ # default: nothing is emitted for deprecated structs
778+ deprecated = " DEPRECATED_STRUCT"
779+
780+ # An optional string that should come before the name of any struct which has been
781+ # marked as `#[deprecated(note = "reason")]`. `{}` will be replaced with the
782+ # double-quoted string. For instance, "__attribute__((deprecated({})))"
783+ # would be a reasonable value if targeting gcc/clang. A more portable solution
784+ # would involve emitting the name of a macro which you define in a
785+ # platform-specific way. e.g. "DEPRECATED_STRUCT_WITH_NOTE(note)"
786+ # default: nothing is emitted for deprecated structs
787+ deprecated_with_notes = " DEPRECATED_STRUCT_WITH_NOTE"
788+
755789# Whether a Rust type with associated consts should emit those consts inside the
756790# type's body. Otherwise they will be emitted trailing and with the type's name
757791# prefixed. This does nothing if the target is C, or if
@@ -865,6 +899,23 @@ cast_assert_name = "MOZ_RELEASE_ASSERT"
865899# default: nothing is emitted for must_use enums
866900must_use = " MUST_USE_ENUM"
867901
902+ # An optional string that should come before the name of any enum which has been
903+ # marked as `#[deprecated]` without note. For instance, "__attribute__((deprecated))"
904+ # would be a reasonable value if targeting gcc/clang. A more portable solution
905+ # would involve emitting the name of a macro which you define in a
906+ # platform-specific way. e.g. "DEPRECATED_ENUM"
907+ # default: nothing is emitted for deprecated enums
908+ deprecated = " DEPRECATED_ENUM"
909+
910+ # An optional string that should come before the name of any enum which has been
911+ # marked as `#[deprecated(note = "reason")]`. `{}` will be replaced with the
912+ # double-quoted string. For instance, "__attribute__((deprecated({})))"
913+ # would be a reasonable value if targeting gcc/clang. A more portable solution
914+ # would involve emitting the name of a macro which you define in a
915+ # platform-specific way. e.g. "DEPRECATED_ENUM_WITH_NOTE(note)"
916+ # default: nothing is emitted for deprecated enums
917+ deprecated_with_notes = " DEPRECATED_ENUM_WITH_NOTE"
918+
868919# Whether enums with fields should generate destructors. This exists so that generic
869920# enums can be properly instantiated with payloads that are C++ types with
870921# destructors. This isn't necessary for structs because C++ has rules to
0 commit comments