The Pool Protocol

This is a protocol, on Solana, that defines pool-like functionality. Like Ethereum interfaces, the setup doesn't do much to constrain the actual behavior of programs which claim to implement this program. This crate defines an instruction format for pool operations, and provides a library that maps Solana's primitives onto the Pool protocol's semantics.

Data Layout

The serialization and deserialization code are generated by borsh. The instruction and state types are defined in the schema crate.

Implementing the Pool protocol

Implement the Pool trait on a marker type ExamplePool, and invoke declare_pool_entrypoint!(ExamplePool) in your program's source somewhere. The crate is mostly complete, but there may be minor breaking changes before the first release.

To-do

  • specify the protocol.
  • Finish implementing the pool crate.
  • Implement the pool GUI.