{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} module Spark.Core.Internal.TypesStructuresRepr( DataTypeElementRepr(..), DataTypeRepr(..) ) where import qualified Data.Text as T import GHC.Generics(Generic) -- The inner representation of a dataype as a Row object. -- This representation is meant to be internal. -- Because the Spark data types do not support recursive types (trees), -- This is a flattened representation of types. data DataTypeElementRepr = DataTypeElementRepr { fieldPath :: ![T.Text], isNullable :: !Bool, typeId :: !Int, fieldIndex :: !Int } deriving (Eq, Show, Generic) data DataTypeRepr = DataTypeRepr { rows :: [DataTypeElementRepr] } deriving (Eq, Show, Generic)