(* Generated by coq-of-rust *)
Require Import CoqOfRust.CoqOfRust.

Module extension.
  Module token_metadata.
    Module Impl_spl_token_2022_extension_Extension_for_spl_token_metadata_interface_state_TokenMetadata.
      Definition Self : Ty.t := Ty.path "spl_token_metadata_interface::state::TokenMetadata".
      
      (*     const TYPE: ExtensionType = ExtensionType::TokenMetadata; *)
      (* Ty.path "spl_token_2022::extension::ExtensionType" *)
      Definition value_TYPE : Value.t :=
        M.run
          ltac:(M.monadic
            (M.alloc (|
              Value.StructTuple "spl_token_2022::extension::ExtensionType::TokenMetadata" []
            |))).
      
      Axiom Implements :
        M.IsTraitInstance
          "spl_token_2022::extension::Extension"
          Self
          (* Trait polymorphic types *) []
          (* Instance *) [ ("value_TYPE", InstanceField.Constant value_TYPE) ].
    End Impl_spl_token_2022_extension_Extension_for_spl_token_metadata_interface_state_TokenMetadata.
  End token_metadata.
End extension.
