aboutsummaryrefslogblamecommitdiff
path: root/src/storage/in_memory.rs
blob: 5cc8ef86d7ec3771ff1972283df403548bbcef84 (plain) (tree)
1
2
3
4
5
6
7
8
9
                       

                      
                             
                     



                      
                            




                                                             

                         



                                     

 
                             
                                                              



                         
                         
                                                       

                         
                                              

                         
                                     

                         
                                                     


                    


     
                             
                                




                                           
                                       




                         
use futures::FutureExt;
use crate::storage::*;

#[derive(Clone, Debug, Hash)]
pub struct FullMem {}
pub struct MemStore {}
pub struct MemRef {}
pub struct MemValue {}

impl IBuilders for FullMem {
    fn row_store(&self) -> Result<RowStore, StorageError> {
        unimplemented!();
    }

    fn blob_store(&self) -> Result<BlobStore, StorageError> {
        unimplemented!();
    }

    fn url(&self) -> &str {
        return "mem://unimplemented;"
    }
}

impl IRowStore for MemStore {
    fn new_row(&self, partition: &str, sort: &str) -> RowRef {
        unimplemented!();
    }
}

impl IRowRef for MemRef {
    fn set_value(&self, content: Vec<u8>) -> RowValue {
        unimplemented!();
    }
    fn fetch(&self) -> AsyncResult<RowValue> {
        unimplemented!();
    }
    fn rm(&self) -> AsyncResult<()> {
        unimplemented!();
    }
    fn poll(&self) -> AsyncResult<Option<RowValue>> {
        async {
            Ok(None)
        }.boxed()
    }
}

impl IRowValue for MemValue {
    fn to_ref(&self) -> RowRef {
        unimplemented!();
    }
    fn content(&self) -> ConcurrentValues {
        unimplemented!();
    }
    fn push(&self) -> AsyncResult<()> {
        unimplemented!();
    }
}