syntax = "proto2";
package mojolpm;
message Handle {}
message CreateDataPipeOptions {
required uint32 flags = 2;
required uint32 element_num_bytes = 3;
required uint32 capacity_num_bytes = 4;
}
message CreateSharedBufferOptions {
required uint64 num_bytes = 2;
}
message DataPipeConsumerHandle {
oneof instance {
uint32 old = 1;
CreateDataPipeOptions new = 2;
}
}
message DataPipeProducerHandle {
oneof instance {
uint32 old = 1;
CreateDataPipeOptions new = 2;
}
}
message DataPipeRead {
required DataPipeConsumerHandle handle = 1;
required uint32 size = 2;
}
message DataPipeWrite {
required DataPipeProducerHandle handle = 1;
required bytes data = 2;
}
message DataPipeConsumerClose {
required uint32 id = 1;
}
message DataPipeProducerClose {
required uint32 id = 1;
}
message SharedBufferHandle {
oneof instance {
uint32 old = 1;
CreateSharedBufferOptions new = 2;
}
}
message SharedBufferWrite {
required SharedBufferHandle handle = 1;
required bytes data = 2;
}
message SharedBufferRelease {
required uint32 id = 1;
}
message MessagePipeHandle {}
message PlatformHandle {}