@@ -10,42 +10,31 @@ import BigInt
10
10
11
11
public typealias NoncePolicy = BlockNumber
12
12
13
- public enum GasLimitPolicy {
14
- case automatic
15
- case manual( BigUInt )
16
- case limited( BigUInt )
17
- case withMargin( Double )
18
- }
19
-
20
- public enum GasPricePolicy {
21
- case automatic
22
- case manual( BigUInt )
23
- case withMargin( Double )
24
- }
25
-
26
- public enum FeePerGasPolicy {
27
- case automatic
28
- case manual( BigUInt )
29
- }
30
-
31
- public enum PriorityFeePerGasPolicy {
13
+ /// Policies for resolving values like:
14
+ /// - gas required for transaction execution
15
+ /// - gas price
16
+ /// - maximum fee per gas
17
+ /// - maximum priority fee per gas
18
+ public enum ValueResolutionPolicy {
19
+ /// What ever value will be resolved is the one to be applied
32
20
case automatic
21
+ /// Specific value to be applied
33
22
case manual( BigUInt )
34
23
}
35
24
36
25
public struct Policies {
37
26
public let noncePolicy : NoncePolicy
38
- public let gasLimitPolicy : GasLimitPolicy
39
- public let gasPricePolicy : GasPricePolicy
40
- public let maxFeePerGasPolicy : FeePerGasPolicy
41
- public let maxPriorityFeePerGasPolicy : PriorityFeePerGasPolicy
27
+ public let gasLimitPolicy : ValueResolutionPolicy
28
+ public let gasPricePolicy : ValueResolutionPolicy
29
+ public let maxFeePerGasPolicy : ValueResolutionPolicy
30
+ public let maxPriorityFeePerGasPolicy : ValueResolutionPolicy
42
31
43
32
public init (
44
33
noncePolicy: NoncePolicy = . latest,
45
- gasLimitPolicy: GasLimitPolicy = . automatic,
46
- gasPricePolicy: GasPricePolicy = . automatic,
47
- maxFeePerGasPolicy: FeePerGasPolicy = . automatic,
48
- maxPriorityFeePerGasPolicy: PriorityFeePerGasPolicy = . automatic) {
34
+ gasLimitPolicy: ValueResolutionPolicy = . automatic,
35
+ gasPricePolicy: ValueResolutionPolicy = . automatic,
36
+ maxFeePerGasPolicy: ValueResolutionPolicy = . automatic,
37
+ maxPriorityFeePerGasPolicy: ValueResolutionPolicy = . automatic) {
49
38
self . noncePolicy = noncePolicy
50
39
self . gasLimitPolicy = gasLimitPolicy
51
40
self . gasPricePolicy = gasPricePolicy
0 commit comments