| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
DataFrame.IO.Parquet.Levels
Synopsis
- readLevelsV1 :: Int -> Int -> Int -> ByteString -> ([Int], [Int], ByteString)
- readLevelsV2 :: Int -> Int -> Int -> Int32 -> Int32 -> ByteString -> ([Int], [Int], ByteString)
- stitchNullable :: Int -> [Int] -> [a] -> [Maybe a]
- data SNode = SNode {}
- parseOne :: [SchemaElement] -> (SNode, [SchemaElement])
- parseMany :: Int -> [SchemaElement] -> ([SNode], [SchemaElement])
- parseAll :: [SchemaElement] -> [SNode]
- pairWithVals :: Int -> [(Int, Int)] -> [a] -> [(Int, Int, Maybe a)]
- splitAtRepBound :: Int -> [(Int, Int, Maybe a)] -> [[(Int, Int, Maybe a)]]
- stitchList :: Int -> [Int] -> [Int] -> [a] -> [Maybe [Maybe a]]
- stitchList2 :: Int -> Int -> [Int] -> [Int] -> [a] -> [Maybe [Maybe [Maybe a]]]
- stitchList3 :: Int -> Int -> Int -> [Int] -> [Int] -> [a] -> [Maybe [Maybe [Maybe [Maybe a]]]]
- levelsForPath :: [SchemaElement] -> [String] -> (Int, Int)
Documentation
readLevelsV1 :: Int -> Int -> Int -> ByteString -> ([Int], [Int], ByteString) Source #
readLevelsV2 :: Int -> Int -> Int -> Int32 -> Int32 -> ByteString -> ([Int], [Int], ByteString) Source #
parseOne :: [SchemaElement] -> (SNode, [SchemaElement]) Source #
parseMany :: Int -> [SchemaElement] -> ([SNode], [SchemaElement]) Source #
parseAll :: [SchemaElement] -> [SNode] Source #
pairWithVals :: Int -> [(Int, Int)] -> [a] -> [(Int, Int, Maybe a)] Source #
Tag leaf values as Just/Nothing according to maxDef.
splitAtRepBound :: Int -> [(Int, Int, Maybe a)] -> [[(Int, Int, Maybe a)]] Source #
Split triplets into groups; a new group begins whenever rep <= bound.
stitchList :: Int -> [Int] -> [Int] -> [a] -> [Maybe [Maybe a]] Source #
Reconstruct a list column from Dremel encoding levels. rep=0 starts a new top-level row; def=0 means the entire list slot is null. Returns one Maybe [Maybe a] per row.
stitchList2 :: Int -> Int -> [Int] -> [Int] -> [a] -> [Maybe [Maybe [Maybe a]]] Source #
Reconstruct a 2-level nested list (maxRep=2) from Dremel triplets. defT1: def threshold at which the depth-1 element is present (not null). maxDef: def threshold at which the leaf is present.
stitchList3 :: Int -> Int -> Int -> [Int] -> [Int] -> [a] -> [Maybe [Maybe [Maybe [Maybe a]]]] Source #
Reconstruct a 3-level nested list (maxRep=3) from Dremel triplets. defT1, defT2: def thresholds at which depth-1 and depth-2 elements are present. maxDef: def threshold at which the leaf is present.
levelsForPath :: [SchemaElement] -> [String] -> (Int, Int) Source #