{-# LANGUAGE PatternSynonyms #-} -------------------------------------------------------------------- -- | -- Module : Data.Ruby.Marshal.Types -- Copyright : (c) Philip Cunningham, 2015 -- License : MIT -- -- Maintainer: hello@filib.io -- Stability : experimental -- Portability: portable -- -- Common types for Ruby Marshal deserialisation. -- -------------------------------------------------------------------- module Data.Ruby.Marshal.Types ( -- * Marshal Monad Marshal -- * Internal cache , Cache -- * Ruby string encodings , RubyStringEncoding(..) -- * Ruby object , RubyObject(..) -- * Patterns , pattern NilChar , pattern FalseChar , pattern TrueChar , pattern ArrayChar , pattern FixnumChar , pattern FloatChar , pattern HashChar , pattern IVarChar , pattern ObjectLinkChar , pattern StringChar , pattern SymbolChar , pattern SymlinkChar ) where import Data.Ruby.Marshal.Encoding import Data.Ruby.Marshal.Monad import Data.Ruby.Marshal.RubyObject -- | Character that represents NilCharlass. pattern NilChar = 48 -- | Character that represents FalseClass. pattern FalseChar = 70 -- | Character that represents TrueClass. pattern TrueChar = 84 -- | Character that represents Array. pattern ArrayChar = 91 -- | Character that represents Fixnum. pattern FixnumChar = 105 -- | Character that represents Float. pattern FloatChar = 102 -- | Character that represents Hash. pattern HashChar = 123 -- | Character that represents IVar. pattern IVarChar = 73 -- | Character that represents Object link. pattern ObjectLinkChar = 64 -- | Character that represents String. pattern StringChar = 34 -- | Character that represents Symbol. pattern SymbolChar = 58 -- | Character that represents Symlink. pattern SymlinkChar = 59