Skip to content

Conversation

@evanrittenhouse
Copy link
Contributor

Add H3iHandle and connect_interactive() to allow submitting actions one at a time via a channel, rather than providing all actions upfront.

Changes:

  • Add H3iHandle struct with do_action() and finish() methods
  • Add connect_interactive() function that returns an H3iHandle
  • Refactor H3iDriver to use VecDeque action queue instead of Vec+index
  • Add action_rx channel for receiving actions in interactive mode
  • Move action processing from iterator-based to queue-based approach
  • Process incoming actions in work_loop via select! macro

This enables use cases where actions need to be submitted dynamically based on server responses, rather than predetermined at connection time.

@evanrittenhouse evanrittenhouse force-pushed the evanrittenhouse-h3i-yield branch 2 times, most recently from 02b03f7 to cc22355 Compare December 18, 2025 22:30
Add H3iHandle and connect_interactive() to allow submitting actions
one at a time via a channel, rather than providing all actions upfront.

Changes:
- Add H3iHandle struct with do_action() and finish() methods
- Add connect_interactive() function that returns an H3iHandle
- Refactor H3iDriver to use VecDeque action queue instead of Vec+index
- Add action_rx channel for receiving actions in interactive mode
- Move action processing from iterator-based to queue-based approach
- Process incoming actions in work_loop via select! macro

This enables use cases where actions need to be submitted dynamically
based on server responses, rather than predetermined at connection time.
@evanrittenhouse evanrittenhouse force-pushed the evanrittenhouse-h3i-yield branch from cc22355 to 17088f9 Compare December 18, 2025 22:34
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.

1 participant