Skip to content

Commit e476d93

Browse files
committed
feat: add polymorphic const parameters except in top_level
1 parent 88290f5 commit e476d93

File tree

295 files changed

+11041
-3878
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

295 files changed

+11041
-3878
lines changed

CoqOfRust/examples/axiomatized/examples/custom/polymorphic_associated_function.v

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Require Import CoqOfRust.CoqOfRust.
1010

1111
Module Impl_polymorphic_associated_function_Foo_A.
1212
Definition Self (A : Ty.t) : Ty.t :=
13-
Ty.apply (Ty.path "polymorphic_associated_function::Foo") [ A ].
13+
Ty.apply (Ty.path "polymorphic_associated_function::Foo") [ A ] [].
1414

1515
Parameter convert : forall (A : Ty.t), (list Ty.t) -> (list Value.t) -> M.
1616

CoqOfRust/examples/axiomatized/examples/ink_contracts/basic_contract_caller.v

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,10 @@ End Impl_core_marker_Copy_for_basic_contract_caller_AccountId.
4747

4848
Axiom Hash :
4949
(Ty.path "basic_contract_caller::Hash") =
50-
(Ty.apply (Ty.path "array") [ Ty.path "u8" ]).
50+
(Ty.apply
51+
(Ty.path "array")
52+
[ Ty.path "u8" ]
53+
[ Value.Integer Integer.Usize 32 ]).
5154

5255
(* Enum Error *)
5356
(* {

CoqOfRust/examples/axiomatized/examples/ink_contracts/call_runtime.v

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@ Module Impl_core_convert_From_call_runtime_AccountId_for_call_runtime_MultiAddre
6464
Definition Self : Ty.t :=
6565
Ty.apply
6666
(Ty.path "call_runtime::MultiAddress")
67-
[ Ty.path "call_runtime::AccountId"; Ty.tuple [] ].
67+
[ Ty.path "call_runtime::AccountId"; Ty.tuple [] ]
68+
[].
6869

6970
Parameter from : (list Ty.t) -> (list Value.t) -> M.
7071

@@ -90,7 +91,8 @@ End Impl_core_convert_From_call_runtime_AccountId_for_call_runtime_MultiAddress_
9091
("dest",
9192
Ty.apply
9293
(Ty.path "call_runtime::MultiAddress")
93-
[ Ty.path "call_runtime::AccountId"; Ty.tuple [] ]);
94+
[ Ty.path "call_runtime::AccountId"; Ty.tuple [] ]
95+
[]);
9496
("value", Ty.path "u128")
9597
];
9698
discriminant := None;

CoqOfRust/examples/axiomatized/examples/ink_contracts/custom_allocator.v

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ Require Import CoqOfRust.CoqOfRust.
1010
("value",
1111
Ty.apply
1212
(Ty.path "alloc::vec::Vec")
13-
[ Ty.path "bool"; Ty.path "alloc::alloc::Global" ])
13+
[ Ty.path "bool"; Ty.path "alloc::alloc::Global" ]
14+
[])
1415
];
1516
} *)
1617

CoqOfRust/examples/axiomatized/examples/ink_contracts/dns.v

Lines changed: 51 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ Require Import CoqOfRust.CoqOfRust.
77
ty_params := [ "K"; "V" ];
88
fields :=
99
[
10-
("_key", Ty.apply (Ty.path "core::marker::PhantomData") [ K ]);
11-
("_value", Ty.apply (Ty.path "core::marker::PhantomData") [ V ])
10+
("_key", Ty.apply (Ty.path "core::marker::PhantomData") [ K ] []);
11+
("_value", Ty.apply (Ty.path "core::marker::PhantomData") [ V ] [])
1212
];
1313
} *)
1414

1515
Module Impl_core_default_Default_for_dns_Mapping_K_V.
1616
Definition Self (K V : Ty.t) : Ty.t :=
17-
Ty.apply (Ty.path "dns::Mapping") [ K; V ].
17+
Ty.apply (Ty.path "dns::Mapping") [ K; V ] [].
1818

1919
Parameter default : forall (K V : Ty.t), (list Ty.t) -> (list Value.t) -> M.
2020

@@ -29,7 +29,7 @@ End Impl_core_default_Default_for_dns_Mapping_K_V.
2929

3030
Module Impl_dns_Mapping_K_V.
3131
Definition Self (K V : Ty.t) : Ty.t :=
32-
Ty.apply (Ty.path "dns::Mapping") [ K; V ].
32+
Ty.apply (Ty.path "dns::Mapping") [ K; V ] [].
3333

3434
Parameter contains : forall (K V : Ty.t), (list Ty.t) -> (list Value.t) -> M.
3535

@@ -142,7 +142,7 @@ Module Impl_core_cmp_PartialEq_for_dns_AccountId.
142142
(* Instance *) [ ("eq", InstanceField.Method eq) ].
143143
End Impl_core_cmp_PartialEq_for_dns_AccountId.
144144

145-
Module Impl_core_convert_From_array_u8_for_dns_AccountId.
145+
Module Impl_core_convert_From_array_u8_32_for_dns_AccountId.
146146
Definition Self : Ty.t := Ty.path "dns::AccountId".
147147

148148
Parameter from : (list Ty.t) -> (list Value.t) -> M.
@@ -152,14 +152,24 @@ Module Impl_core_convert_From_array_u8_for_dns_AccountId.
152152
"core::convert::From"
153153
Self
154154
(* Trait polymorphic types *)
155-
[ (* T *) Ty.apply (Ty.path "array") [ Ty.path "u8" ] ]
155+
[
156+
(* T *)
157+
Ty.apply
158+
(Ty.path "array")
159+
[ Ty.path "u8" ]
160+
[ Value.Integer Integer.Usize 32 ]
161+
]
156162
(* Instance *) [ ("from", InstanceField.Method from) ].
157-
End Impl_core_convert_From_array_u8_for_dns_AccountId.
163+
End Impl_core_convert_From_array_u8_32_for_dns_AccountId.
158164

159165
Axiom Balance : (Ty.path "dns::Balance") = (Ty.path "u128").
160166

161167
Axiom Hash :
162-
(Ty.path "dns::Hash") = (Ty.apply (Ty.path "array") [ Ty.path "u8" ]).
168+
(Ty.path "dns::Hash") =
169+
(Ty.apply
170+
(Ty.path "array")
171+
[ Ty.path "u8" ]
172+
[ Value.Integer Integer.Usize 32 ]).
163173

164174
(* StructRecord
165175
{
@@ -174,7 +184,11 @@ Axiom Hash :
174184
ty_params := [];
175185
fields :=
176186
[
177-
("name", Ty.apply (Ty.path "array") [ Ty.path "u8" ]);
187+
("name",
188+
Ty.apply
189+
(Ty.path "array")
190+
[ Ty.path "u8" ]
191+
[ Value.Integer Integer.Usize 32 ]);
178192
("from", Ty.path "dns::AccountId")
179193
];
180194
} *)
@@ -185,12 +199,17 @@ Axiom Hash :
185199
ty_params := [];
186200
fields :=
187201
[
188-
("name", Ty.apply (Ty.path "array") [ Ty.path "u8" ]);
202+
("name",
203+
Ty.apply
204+
(Ty.path "array")
205+
[ Ty.path "u8" ]
206+
[ Value.Integer Integer.Usize 32 ]);
189207
("from", Ty.path "dns::AccountId");
190208
("old_address",
191209
Ty.apply
192210
(Ty.path "core::option::Option")
193-
[ Ty.path "dns::AccountId" ]);
211+
[ Ty.path "dns::AccountId" ]
212+
[]);
194213
("new_address", Ty.path "dns::AccountId")
195214
];
196215
} *)
@@ -201,12 +220,17 @@ Axiom Hash :
201220
ty_params := [];
202221
fields :=
203222
[
204-
("name", Ty.apply (Ty.path "array") [ Ty.path "u8" ]);
223+
("name",
224+
Ty.apply
225+
(Ty.path "array")
226+
[ Ty.path "u8" ]
227+
[ Value.Integer Integer.Usize 32 ]);
205228
("from", Ty.path "dns::AccountId");
206229
("old_owner",
207230
Ty.apply
208231
(Ty.path "core::option::Option")
209-
[ Ty.path "dns::AccountId" ]);
232+
[ Ty.path "dns::AccountId" ]
233+
[]);
210234
("new_owner", Ty.path "dns::AccountId")
211235
];
212236
} *)
@@ -257,16 +281,24 @@ End Impl_dns_Env.
257281
Ty.apply
258282
(Ty.path "dns::Mapping")
259283
[
260-
Ty.apply (Ty.path "array") [ Ty.path "u8" ];
284+
Ty.apply
285+
(Ty.path "array")
286+
[ Ty.path "u8" ]
287+
[ Value.Integer Integer.Usize 32 ];
261288
Ty.path "dns::AccountId"
262-
]);
289+
]
290+
[]);
263291
("name_to_owner",
264292
Ty.apply
265293
(Ty.path "dns::Mapping")
266294
[
267-
Ty.apply (Ty.path "array") [ Ty.path "u8" ];
295+
Ty.apply
296+
(Ty.path "array")
297+
[ Ty.path "u8" ]
298+
[ Value.Integer Integer.Usize 32 ];
268299
Ty.path "dns::AccountId"
269-
]);
300+
]
301+
[]);
270302
("default_address", Ty.path "dns::AccountId")
271303
];
272304
} *)
@@ -358,8 +390,8 @@ End Impl_core_cmp_Eq_for_dns_Error.
358390

359391
Axiom Result :
360392
forall (T : Ty.t),
361-
(Ty.apply (Ty.path "dns::Result") [ T ]) =
362-
(Ty.apply (Ty.path "core::result::Result") [ T; Ty.path "dns::Error" ]).
393+
(Ty.apply (Ty.path "dns::Result") [ T ] []) =
394+
(Ty.apply (Ty.path "core::result::Result") [ T; Ty.path "dns::Error" ] []).
363395

364396
Module Impl_dns_DomainNameService.
365397
Definition Self : Ty.t := Ty.path "dns::DomainNameService".

CoqOfRust/examples/axiomatized/examples/ink_contracts/erc1155.v

Lines changed: 28 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ Require Import CoqOfRust.CoqOfRust.
77
ty_params := [ "K"; "V" ];
88
fields :=
99
[
10-
("_key", Ty.apply (Ty.path "core::marker::PhantomData") [ K ]);
11-
("_value", Ty.apply (Ty.path "core::marker::PhantomData") [ V ])
10+
("_key", Ty.apply (Ty.path "core::marker::PhantomData") [ K ] []);
11+
("_value", Ty.apply (Ty.path "core::marker::PhantomData") [ V ] [])
1212
];
1313
} *)
1414

1515
Module Impl_core_default_Default_for_erc1155_Mapping_K_V.
1616
Definition Self (K V : Ty.t) : Ty.t :=
17-
Ty.apply (Ty.path "erc1155::Mapping") [ K; V ].
17+
Ty.apply (Ty.path "erc1155::Mapping") [ K; V ] [].
1818

1919
Parameter default : forall (K V : Ty.t), (list Ty.t) -> (list Value.t) -> M.
2020

@@ -29,7 +29,7 @@ End Impl_core_default_Default_for_erc1155_Mapping_K_V.
2929

3030
Module Impl_erc1155_Mapping_K_V.
3131
Definition Self (K V : Ty.t) : Ty.t :=
32-
Ty.apply (Ty.path "erc1155::Mapping") [ K; V ].
32+
Ty.apply (Ty.path "erc1155::Mapping") [ K; V ] [].
3333

3434
Parameter contains : forall (K V : Ty.t), (list Ty.t) -> (list Value.t) -> M.
3535

@@ -136,7 +136,7 @@ Module Impl_core_cmp_PartialEq_for_erc1155_AccountId.
136136
(* Instance *) [ ("eq", InstanceField.Method eq) ].
137137
End Impl_core_cmp_PartialEq_for_erc1155_AccountId.
138138

139-
Module Impl_core_convert_From_array_u8_for_erc1155_AccountId.
139+
Module Impl_core_convert_From_array_u8_32_for_erc1155_AccountId.
140140
Definition Self : Ty.t := Ty.path "erc1155::AccountId".
141141

142142
Parameter from : (list Ty.t) -> (list Value.t) -> M.
@@ -146,9 +146,15 @@ Module Impl_core_convert_From_array_u8_for_erc1155_AccountId.
146146
"core::convert::From"
147147
Self
148148
(* Trait polymorphic types *)
149-
[ (* T *) Ty.apply (Ty.path "array") [ Ty.path "u8" ] ]
149+
[
150+
(* T *)
151+
Ty.apply
152+
(Ty.path "array")
153+
[ Ty.path "u8" ]
154+
[ Value.Integer Integer.Usize 32 ]
155+
]
150156
(* Instance *) [ ("from", InstanceField.Method from) ].
151-
End Impl_core_convert_From_array_u8_for_erc1155_AccountId.
157+
End Impl_core_convert_From_array_u8_32_for_erc1155_AccountId.
152158

153159
Axiom Balance : (Ty.path "erc1155::Balance") = (Ty.path "u128").
154160

@@ -259,8 +265,11 @@ End Impl_core_cmp_Eq_for_erc1155_Error.
259265

260266
Axiom Result :
261267
forall (T : Ty.t),
262-
(Ty.apply (Ty.path "erc1155::Result") [ T ]) =
263-
(Ty.apply (Ty.path "core::result::Result") [ T; Ty.path "erc1155::Error" ]).
268+
(Ty.apply (Ty.path "erc1155::Result") [ T ] []) =
269+
(Ty.apply
270+
(Ty.path "core::result::Result")
271+
[ T; Ty.path "erc1155::Error" ]
272+
[]).
264273

265274
(* Trait *)
266275
(* Empty module 'Erc1155' *)
@@ -281,15 +290,18 @@ Axiom Operator : (Ty.path "erc1155::Operator") = (Ty.path "erc1155::AccountId").
281290
("operator",
282291
Ty.apply
283292
(Ty.path "core::option::Option")
284-
[ Ty.path "erc1155::AccountId" ]);
293+
[ Ty.path "erc1155::AccountId" ]
294+
[]);
285295
("from",
286296
Ty.apply
287297
(Ty.path "core::option::Option")
288-
[ Ty.path "erc1155::AccountId" ]);
298+
[ Ty.path "erc1155::AccountId" ]
299+
[]);
289300
("to",
290301
Ty.apply
291302
(Ty.path "core::option::Option")
292-
[ Ty.path "erc1155::AccountId" ]);
303+
[ Ty.path "erc1155::AccountId" ]
304+
[]);
293305
("token_id", Ty.path "u128");
294306
("value", Ty.path "u128")
295307
];
@@ -364,15 +376,17 @@ End Impl_erc1155_Env.
364376
[
365377
Ty.tuple [ Ty.path "erc1155::AccountId"; Ty.path "u128" ];
366378
Ty.path "u128"
367-
]);
379+
]
380+
[]);
368381
("approvals",
369382
Ty.apply
370383
(Ty.path "erc1155::Mapping")
371384
[
372385
Ty.tuple
373386
[ Ty.path "erc1155::AccountId"; Ty.path "erc1155::AccountId" ];
374387
Ty.tuple []
375-
]);
388+
]
389+
[]);
376390
("token_id_nonce", Ty.path "u128")
377391
];
378392
} *)

CoqOfRust/examples/axiomatized/examples/ink_contracts/erc20.v

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ Require Import CoqOfRust.CoqOfRust.
77
ty_params := [ "K"; "V" ];
88
fields :=
99
[
10-
("_key", Ty.apply (Ty.path "core::marker::PhantomData") [ K ]);
11-
("_value", Ty.apply (Ty.path "core::marker::PhantomData") [ V ])
10+
("_key", Ty.apply (Ty.path "core::marker::PhantomData") [ K ] []);
11+
("_value", Ty.apply (Ty.path "core::marker::PhantomData") [ V ] [])
1212
];
1313
} *)
1414

1515
Module Impl_core_default_Default_for_erc20_Mapping_K_V.
1616
Definition Self (K V : Ty.t) : Ty.t :=
17-
Ty.apply (Ty.path "erc20::Mapping") [ K; V ].
17+
Ty.apply (Ty.path "erc20::Mapping") [ K; V ] [].
1818

1919
Parameter default : forall (K V : Ty.t), (list Ty.t) -> (list Value.t) -> M.
2020

@@ -29,7 +29,7 @@ End Impl_core_default_Default_for_erc20_Mapping_K_V.
2929

3030
Module Impl_erc20_Mapping_K_V.
3131
Definition Self (K V : Ty.t) : Ty.t :=
32-
Ty.apply (Ty.path "erc20::Mapping") [ K; V ].
32+
Ty.apply (Ty.path "erc20::Mapping") [ K; V ] [].
3333

3434
Parameter get : forall (K V : Ty.t), (list Ty.t) -> (list Value.t) -> M.
3535

@@ -107,15 +107,17 @@ Axiom Balance : (Ty.path "erc20::Balance") = (Ty.path "u128").
107107
("balances",
108108
Ty.apply
109109
(Ty.path "erc20::Mapping")
110-
[ Ty.path "erc20::AccountId"; Ty.path "u128" ]);
110+
[ Ty.path "erc20::AccountId"; Ty.path "u128" ]
111+
[]);
111112
("allowances",
112113
Ty.apply
113114
(Ty.path "erc20::Mapping")
114115
[
115116
Ty.tuple
116117
[ Ty.path "erc20::AccountId"; Ty.path "erc20::AccountId" ];
117118
Ty.path "u128"
118-
])
119+
]
120+
[])
119121
];
120122
} *)
121123

@@ -141,11 +143,13 @@ End Impl_core_default_Default_for_erc20_Erc20.
141143
("from",
142144
Ty.apply
143145
(Ty.path "core::option::Option")
144-
[ Ty.path "erc20::AccountId" ]);
146+
[ Ty.path "erc20::AccountId" ]
147+
[]);
145148
("to",
146149
Ty.apply
147150
(Ty.path "core::option::Option")
148-
[ Ty.path "erc20::AccountId" ]);
151+
[ Ty.path "erc20::AccountId" ]
152+
[]);
149153
("value", Ty.path "u128")
150154
];
151155
} *)
@@ -200,8 +204,11 @@ End Impl_core_default_Default_for_erc20_Erc20.
200204

201205
Axiom Result :
202206
forall (T : Ty.t),
203-
(Ty.apply (Ty.path "erc20::Result") [ T ]) =
204-
(Ty.apply (Ty.path "core::result::Result") [ T; Ty.path "erc20::Error" ]).
207+
(Ty.apply (Ty.path "erc20::Result") [ T ] []) =
208+
(Ty.apply
209+
(Ty.path "core::result::Result")
210+
[ T; Ty.path "erc20::Error" ]
211+
[]).
205212

206213
Module Impl_erc20_Env.
207214
Definition Self : Ty.t := Ty.path "erc20::Env".

0 commit comments

Comments
 (0)