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

(* StructTuple
  {
    name := "A";
    const_params := [];
    ty_params := [];
    fields := [];
  } *)

(* StructTuple
  {
    name := "S";
    const_params := [];
    ty_params := [];
    fields := [ Ty.path "generics_functions::A" ];
  } *)

(* StructTuple
  {
    name := "SGen";
    const_params := [];
    ty_params := [ "T" ];
    fields := [ T ];
  } *)

Parameter reg_fn : (list Value.t) -> (list Ty.t) -> (list Value.t) -> M.

Axiom Function_reg_fn : M.IsFunction "generics_functions::reg_fn" reg_fn.

Parameter gen_spec_t : (list Value.t) -> (list Ty.t) -> (list Value.t) -> M.

Axiom Function_gen_spec_t : M.IsFunction "generics_functions::gen_spec_t" gen_spec_t.

Parameter gen_spec_i32 : (list Value.t) -> (list Ty.t) -> (list Value.t) -> M.

Axiom Function_gen_spec_i32 : M.IsFunction "generics_functions::gen_spec_i32" gen_spec_i32.

Parameter generic : (list Value.t) -> (list Ty.t) -> (list Value.t) -> M.

Axiom Function_generic : M.IsFunction "generics_functions::generic" generic.

Parameter main : (list Value.t) -> (list Ty.t) -> (list Value.t) -> M.

Axiom Function_main : M.IsFunction "generics_functions::main" main.
