Skip to content
This repository was archived by the owner on Aug 24, 2019. It is now read-only.

Commit 41896b5

Browse files
committed
1 parent aeefb59 commit 41896b5

File tree

5 files changed

+1815
-18
lines changed

5 files changed

+1815
-18
lines changed

src/lib.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,9 @@
124124
#![feature(rustc_private)]
125125
#![feature(specialization)]
126126
#![feature(try_from)]
127+
#![feature(existential_type)]
128+
#![feature(maybe_uninit)]
129+
#![feature(nll)]
127130
#![allow(dead_code)]
128131
#![allow(non_camel_case_types)]
129132

src/record/mod.rs

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,28 @@
2020
mod api;
2121
pub mod reader;
2222
mod triplet;
23+
pub mod schemas;
24+
pub mod types;
2325

26+
use std::{fmt,fmt::Debug};
27+
use schema::types::ColumnDescPtr;
28+
use schema::types::ColumnPath;
29+
use std::collections::HashMap;
30+
use errors::ParquetError;
31+
use schema::types::Type;
32+
use record::reader::Reader;
33+
use column::reader::ColumnReader;
2434
// pub use self::api::{List, ListAccessor, Map, MapAccessor, Row, RowAccessor};
25-
pub use self::triplet::TypedTripletIter;
35+
// pub use self::triplet::TypedTripletIter;
36+
37+
pub trait DebugType {
38+
fn fmt(f: &mut fmt::Formatter) -> Result<(), fmt::Error>;
39+
}
40+
41+
pub trait Deserialize: Sized {
42+
type Schema: Debug + DebugType;
43+
type Reader: Reader<Item = Self>;
44+
45+
fn parse(schema: &Type) -> Result<(String,Self::Schema),ParquetError>;
46+
fn reader(schema: &Self::Schema, mut path: &mut Vec<String>, curr_def_level: i16, curr_rep_level: i16, paths: &mut HashMap<ColumnPath, (ColumnDescPtr,ColumnReader)>) -> Self::Reader;
47+
}

0 commit comments

Comments
 (0)