aptos_global_constants_link/
lib.rs1#![forbid(unsafe_code)]
10
11pub const APTOS_ROOT_KEY: &str = "aptos_root";
13pub const CONSENSUS_KEY: &str = "consensus";
14pub const FULLNODE_NETWORK_KEY: &str = "fullnode_network";
15pub const OPERATOR_ACCOUNT: &str = "operator_account";
16pub const OPERATOR_KEY: &str = "operator";
17pub const OWNER_ACCOUNT: &str = "owner_account";
18pub const OWNER_KEY: &str = "owner";
19pub const VALIDATOR_NETWORK_KEY: &str = "validator_network";
20
21pub const SAFETY_DATA: &str = "safety_data";
23pub const WAYPOINT: &str = "waypoint";
24pub const GENESIS_WAYPOINT: &str = "genesis-waypoint";
25pub const MOVE_MODULES: &str = "move_modules";
26pub const MIN_PRICE_PER_GAS_UNIT: &str = "min_price_per_gas_unit";
27
28#[cfg(any(test, feature = "testing"))]
32pub const GAS_UNIT_PRICE: u64 = 0;
33#[cfg(not(any(test, feature = "testing")))]
34pub const GAS_UNIT_PRICE: u64 = 100;
35
36pub const MAX_GAS_AMOUNT: u64 = 1_000_000;
37pub const GAS_HEADROOM_NUMERATOR: u64 = 3;
38pub const GAS_HEADROOM_DENOMINATOR: u64 = 2;
39
40pub fn adjust_gas_headroom(gas_used: u64, max_possible_gas: u64) -> u64 {
43 std::cmp::min(
44 max_possible_gas,
45 (gas_used.saturating_mul(GAS_HEADROOM_NUMERATOR)).saturating_div(GAS_HEADROOM_DENOMINATOR),
46 )
47}