Skip to content

refactor(gem_hypercore): use fold for position aggregation in get_positions#1013

Merged
gemcoder21 merged 2 commits intocodex/hip-3-perpsfrom
copilot/sub-pr-1009-again
Mar 16, 2026
Merged

refactor(gem_hypercore): use fold for position aggregation in get_positions#1013
gemcoder21 merged 2 commits intocodex/hip-3-perpsfrom
copilot/sub-pr-1009-again

Conversation

Copy link
Contributor

Copilot AI commented Mar 15, 2026

Replaces the mutable variable loop in get_positions with a functional fold, eliminating intermediate mut bindings.

let (positions, balance) = summaries.into_iter().fold(
    (Vec::new(), PerpetualBalance { available: 0.0, reserved: 0.0, withdrawable: 0.0 }),
    |(mut acc_pos, mut acc_bal), summary| {
        acc_pos.extend(summary.positions);
        acc_bal.available += summary.balance.available;
        acc_bal.reserved += summary.balance.reserved;
        acc_bal.withdrawable += summary.balance.withdrawable;
        (acc_pos, acc_bal)
    },
);

🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.

Co-authored-by: gemcoder21 <104884878+gemcoder21@users.noreply.github.com>
Copilot AI changed the title [WIP] [WIP] Addressing feedback on reopening HIP3 support PR refactor(gem_hypercore): use fold for position aggregation in get_positions Mar 15, 2026
Copilot AI requested a review from gemcoder21 March 15, 2026 23:11
@gemcoder21 gemcoder21 marked this pull request as ready for review March 16, 2026 02:15
@gemcoder21 gemcoder21 merged commit 9d722ed into codex/hip-3-perps Mar 16, 2026
@gemcoder21 gemcoder21 deleted the copilot/sub-pr-1009-again branch March 16, 2026 02:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants