change C++ header file location

main
Ziyang Hu 2 years ago
parent 7f599b79c1
commit f7850122f6

14
.gitignore vendored

@ -14,4 +14,16 @@ Cargo.lock
**/*.rs.bk **/*.rs.bk
_path* _path*
*.db *.db### CMake template
CMakeLists.txt.user
CMakeCache.txt
CMakeFiles
CMakeScripts
Testing
Makefile
cmake_install.cmake
install_manifest.txt
compile_commands.json
CTestTestfile.cmake
_deps

@ -1 +0,0 @@
rocksdb

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="CMakeWorkspace" PROJECT_DIR="$PROJECT_DIR$/rocksdb"> <component name="CMakeWorkspace" PROJECT_DIR="$PROJECT_DIR$/cozo-rocks">
<contentRoot DIR="$PROJECT_DIR$" /> <contentRoot DIR="$PROJECT_DIR$" />
</component> </component>
</project> </project>

@ -9,5 +9,4 @@ void write_status_impl(Status &status, StatusCode code, StatusSubCode subcode, S
status.code = code; status.code = code;
status.subcode = subcode; status.subcode = subcode;
status.severity = severity; status.severity = severity;
} }

@ -49,7 +49,9 @@ public:
const char *Name() const { const char *Name() const {
return "RustComparator"; return "RustComparator";
} }
void FindShortestSeparator(std::string *, const rocksdb::Slice &) const {} void FindShortestSeparator(std::string *, const rocksdb::Slice &) const {}
void FindShortSuccessor(std::string *) const {} void FindShortSuccessor(std::string *) const {}
void set_fn(RustComparatorFn f) const { void set_fn(RustComparatorFn f) const {
@ -159,6 +161,15 @@ struct DBBridge {
} }
}; };
inline std::vector <std::string> list_column_families(const OptionsBridge &options,
const rust::Slice<const uint8_t> path) {
std::vector <std::string> column_families;
RDB::DB::ListColumnFamilies(options.inner,
std::string(reinterpret_cast<const char *>(path.data()), path.size()),
&column_families);
return column_families;
}
inline std::unique_ptr <DBBridge> open_db(const OptionsBridge &options, const rust::Slice<const uint8_t> path) { inline std::unique_ptr <DBBridge> open_db(const OptionsBridge &options, const rust::Slice<const uint8_t> path) {
RDB::DB *db_ptr; RDB::DB *db_ptr;
RDB::Status s = RDB::DB::Open(options.inner, RDB::Status s = RDB::DB::Open(options.inner,

@ -91,7 +91,6 @@ mod ffi {
} }
use std::sync::atomic::Ordering;
use cxx::UniquePtr; use cxx::UniquePtr;
pub use ffi::*; pub use ffi::*;
@ -177,6 +176,7 @@ impl Default for WriteOptions {
pub struct DB { pub struct DB {
bridge: UniquePtr<DBBridge>, bridge: UniquePtr<DBBridge>,
#[allow(dead_code)]
options: Options, options: Options,
default_read_options: ReadOptions, default_read_options: ReadOptions,
default_write_options: WriteOptions, default_write_options: WriteOptions,

@ -6,9 +6,9 @@ use crate::error::Result;
use crate::error::CozoError::*; use crate::error::CozoError::*;
use crate::eval::Evaluator; use crate::eval::Evaluator;
use crate::storage::Storage; use crate::storage::Storage;
use crate::typing::{Col, Columns, Edge, Index, Node, StorageStatus, Structured, TableId, Typing}; use crate::typing::{Col, Columns, Edge, Index, Node, Structured, TableId, Typing};
use crate::typing::StorageStatus::{Planned, Stored}; use crate::typing::StorageStatus::{Planned, Stored};
use crate::value::{ByteArrayBuilder, ByteArrayParser, Value}; use crate::value::{ByteArrayBuilder, Value};
use crate::parser::{Parser, Rule}; use crate::parser::{Parser, Rule};
use pest::Parser as PestParser; use pest::Parser as PestParser;
// use rocksdb::IteratorMode; // use rocksdb::IteratorMode;
@ -291,6 +291,7 @@ pub enum TableKind {
} }
impl Storage { impl Storage {
#[allow(unused_variables)]
fn all_metadata(&self, env: &StructuredEnvItem) -> Result<Vec<Structured>> { fn all_metadata(&self, env: &StructuredEnvItem) -> Result<Vec<Structured>> {
todo!() todo!()
// let it = self.db.as_ref().ok_or(DatabaseClosed)?.full_iterator(IteratorMode::Start); // let it = self.db.as_ref().ok_or(DatabaseClosed)?.full_iterator(IteratorMode::Start);

@ -1,10 +1,9 @@
use crate::error::CozoError::DatabaseClosed;
use crate::error::Result; use crate::error::Result;
use crate::value::cozo_comparator_v1;
pub struct Storage { pub struct Storage {
pub db: Option<()>, pub db: Option<()>,
#[allow(dead_code)]
path: String, path: String,
} }
// //
@ -28,6 +27,7 @@ impl Storage {
pub fn no_storage() -> Self { pub fn no_storage() -> Self {
Self { db: None, path: "".to_string() } Self { db: None, path: "".to_string() }
} }
#[allow(unused_variables)]
pub fn new(path: String) -> Result<Self> { pub fn new(path: String) -> Result<Self> {
unimplemented!() unimplemented!()
// let options = make_options(); // let options = make_options();
@ -41,37 +41,40 @@ impl Storage {
// let db = DB::open_cf_descriptors(&options, &path, cfs)?; // let db = DB::open_cf_descriptors(&options, &path, cfs)?;
// Ok(Storage { db: Some(db), path }) // Ok(Storage { db: Some(db), path })
} }
#[allow(unused_variables)]
pub fn delete(&mut self) -> Result<()> { pub fn delete(&mut self) -> Result<()> {
unimplemented!(); unimplemented!()
// drop(self.db.take()); // drop(self.db.take());
// DB::destroy(&make_options(), &self.path)?; // DB::destroy(&make_options(), &self.path)?;
Ok(()) // Ok(())
} }
#[allow(unused_variables)]
pub fn put_global(&self, k: &[u8], v: &[u8]) -> Result<()> { pub fn put_global(&self, k: &[u8], v: &[u8]) -> Result<()> {
// let db = self.db.as_ref().ok_or(DatabaseClosed)?; // let db = self.db.as_ref().ok_or(DatabaseClosed)?;
// db.put(k, v)?; // db.put(k, v)?;
unimplemented!(); unimplemented!()
Ok(()) // Ok(())
} }
#[allow(unused_variables)]
pub fn create_table(&mut self, name: &str, _global: bool) -> Result<()> { pub fn create_table(&mut self, name: &str, _global: bool) -> Result<()> {
unimplemented!(); unimplemented!()
// let db = self.db.as_mut().ok_or(DatabaseClosed)?; // let db = self.db.as_mut().ok_or(DatabaseClosed)?;
// db.create_cf(name, &make_options())?; // db.create_cf(name, &make_options())?;
Ok(()) // Ok(())
} }
#[allow(unused_variables)]
pub fn drop_table(&mut self, name: &str, _global: bool) -> Result<()> { pub fn drop_table(&mut self, name: &str, _global: bool) -> Result<()> {
unimplemented!(); unimplemented!()
// let db = self.db.as_mut().ok_or(DatabaseClosed)?; // let db = self.db.as_mut().ok_or(DatabaseClosed)?;
// db.drop_cf(name)?; // db.drop_cf(name)?;
Ok(()) // Ok(())
} }
} }
#[cfg(test)] #[cfg(test)]
mod tests { mod tests {
use std::str::from_utf8; use std::str::from_utf8;
use crate::value::{ByteArrayBuilder, Value}; use crate::value::{ByteArrayBuilder, cozo_comparator_v1, Value};
use super::*;
#[test] #[test]
fn import() { fn import() {

Loading…
Cancel
Save