-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | C++ FFI generator - Standard library bindings -- -- Hoppy generates Haskell bindings to C++ libraries. -- -- This package contains definitions for the C++ standard library. @package hoppy-std @version 0.5.0 -- | Bindings for std::string. module Foreign.Hoppy.Generator.Std.String -- |
--   std::string
--   
c_string :: Class -- | Bindings for std that aren't in other modules. module Foreign.Hoppy.Generator.Std -- | Specifies how values in a collection should be converted when -- converting the collection as a whole. data ValueConversion -- | A C++ value of type t will convert to a foreign value of type -- ptrT t. ConvertPtr :: ValueConversion -- | A C++ value of type t will convert to a foreign value of type -- t. For an object type (objT), the class must have -- conversions (ClassConversion). ConvertValue :: ValueConversion -- | Include std::string. mod_std :: Module -- |
--   std::string
--   
c_string :: Class instance GHC.Show.Show Foreign.Hoppy.Generator.Std.ValueConversion instance GHC.Classes.Ord Foreign.Hoppy.Generator.Std.ValueConversion instance GHC.Classes.Eq Foreign.Hoppy.Generator.Std.ValueConversion instance GHC.Enum.Enum Foreign.Hoppy.Generator.Std.ValueConversion instance GHC.Enum.Bounded Foreign.Hoppy.Generator.Std.ValueConversion -- | Bindings for std::pair. module Foreign.Hoppy.Generator.Std.Pair -- | Options for instantiating pair. data Options Options :: [ClassFeature] -> Options -- | Additional features to add to the std::pair class. Pairs are -- always Assignable and Copyable. [optPairClassFeatures] :: Options -> [ClassFeature] -- | The default options have no additional ClassFeatures. defaultOptions :: Options -- | A set of instantiated pair classes. data Contents Contents :: Class -> Contents -- |
--   std::pair<A, B>
--   
[c_pair] :: Contents -> Class -- | instantiate className a b reqs creates a set of bindings for -- an instantiation of std::pair<a, b>. In the result, the -- c_pair class has an external name of className. instantiate :: String -> Type -> Type -> Reqs -> Contents -- | instantiate with additional options. instantiate' :: String -> Type -> Type -> Reqs -> Options -> Contents -- | Converts an instantiation into a list of exports to be included in a -- module. toExports :: Contents -> [Export] -- | Support for STL-style iterators. The functions in this module modify a -- class to add functionality that is provided by different types of STL -- iterators. In the method pseudotypes documented here, the parameter -- types are Types, and all methods are nonpure. module Foreign.Hoppy.Generator.Std.Iterator -- | Whether an iterator may be used to modify the underlying collection. data IteratorMutability Constant :: IteratorMutability Mutable :: IteratorMutability -- | makeTrivialIteartor mutable valueTypeMaybe cls turns a class -- into a trivial iterator, adding: -- -- makeTrivialIterator :: IteratorMutability -> Maybe Type -> Class -> Class -- | Turns a class into a forward iterator, including everything from -- makeTrivialIterator plus the pre-increment operator: -- -- makeForwardIterator :: IteratorMutability -> Maybe Type -> Class -> Class -- | Turns a class into a bidirectional iterator, including everything from -- makeForwardIterator plus the pre-decrement operator: -- -- makeBidirectionalIterator :: IteratorMutability -> Maybe Type -> Class -> Class -- | makeRandomIterator mutable valueTypeMaybe distanceType cls -- turns a class into a random iterator, including everything from -- makeBidirectionalIterator plus some methods: -- -- makeRandomIterator :: IteratorMutability -> Maybe Type -> Type -> Class -> Class instance GHC.Show.Show Foreign.Hoppy.Generator.Std.Iterator.IteratorMutability instance GHC.Classes.Ord Foreign.Hoppy.Generator.Std.Iterator.IteratorMutability instance GHC.Classes.Eq Foreign.Hoppy.Generator.Std.Iterator.IteratorMutability -- | Bindings for std::vector. module Foreign.Hoppy.Generator.Std.Vector -- | Options for instantiating the vector classes. data Options Options :: [ClassFeature] -> Maybe ValueConversion -> Options -- | Additional features to add to the std::vector class. Vectors -- are always Assignable and Copyable, but you may want to -- add Equatable and Comparable if your value type supports -- those. [optVectorClassFeatures] :: Options -> [ClassFeature] [optValueConversion] :: Options -> Maybe ValueConversion -- | The default options have no additional ClassFeatures. defaultOptions :: Options -- | A set of instantiated vector classes. data Contents Contents :: Class -> Class -> Class -> Contents -- |
--   std::vector<T>
--   
[c_vector] :: Contents -> Class -- |
--   std::vector<T>::iterator
--   
[c_iterator] :: Contents -> Class -- |
--   std::vector<T>::const_iterator
--   
[c_constIterator] :: Contents -> Class -- | instantiate className t tReqs creates a set of bindings for -- an instantiation of std::vector and associated types (e.g. -- iterators). In the result, the c_vector class has an external -- name of className, and the iterator classes are further -- suffixed with "Iterator" and "ConstIterator" -- respectively. instantiate :: String -> Type -> Reqs -> Contents -- | instantiate with additional options. instantiate' :: String -> Type -> Reqs -> Options -> Contents -- | Converts an instantiation into a list of exports to be included in a -- module. toExports :: Contents -> [Export] -- | Bindings for std::unordered_set. module Foreign.Hoppy.Generator.Std.UnorderedSet -- | Options for instantiating the set classes. data Options Options :: [ClassFeature] -> Maybe ValueConversion -> Options -- | Additional features to add to the std::unordered_set class. -- UnorderedSets are always Assignable, Comparable, and -- Copyable, but you may want to add Equatable if your -- value type supports those. [optUnorderedSetClassFeatures] :: Options -> [ClassFeature] [optValueConversion] :: Options -> Maybe ValueConversion -- | The default options have no additional ClassFeatures. defaultOptions :: Options -- | A set of instantiated set classes. data Contents Contents :: Class -> Class -> Class -> Contents -- |
--   std::unordered_set<T>
--   
[c_set] :: Contents -> Class -- |
--   std::unordered_set<T>::iterator
--   
[c_iterator] :: Contents -> Class -- |
--   std::unordered_set<T>::const_iterator
--   
[c_constIterator] :: Contents -> Class -- | instantiate className t tReqs creates a set of bindings for -- an instantiation of std::unordered_set and associated types -- (e.g. iterators). In the result, the c_set class has an -- external name of className, and the iterator class is further -- suffixed with "Iterator". instantiate :: String -> Type -> Reqs -> Contents -- | instantiate with additional options. instantiate' :: String -> Type -> Reqs -> Options -> Contents -- | Converts an instantiation into a list of exports to be included in a -- module. toExports :: Contents -> [Export] -- | Bindings for std::unordered_map. module Foreign.Hoppy.Generator.Std.UnorderedMap -- | Options for instantiating the map classes. data Options Options :: [ClassFeature] -> Maybe ValueConversion -> Maybe ValueConversion -> Options -- | Additional features to add to the std::unordered_map class. -- UnorderedMaps are always Assignable and Copyable. [optUnorderedMapClassFeatures] :: Options -> [ClassFeature] -- | How to convert values of the key type. [optKeyConversion] :: Options -> Maybe ValueConversion -- | How to convert values of the value type. [optValueConversion] :: Options -> Maybe ValueConversion -- | The default options have no additional ClassFeatures. defaultOptions :: Options -- | A set of instantiated map classes. data Contents Contents :: Class -> Class -> Class -> Contents -- |
--   std::unordered_map<K, V>
--   
[c_map] :: Contents -> Class -- |
--   std::unordered_map<K, V>::iterator
--   
[c_iterator] :: Contents -> Class -- |
--   std::unordered_map<K, V>::const_iterator
--   
[c_constIterator] :: Contents -> Class -- | instantiate className k v reqs creates a set of bindings for -- an instantiation of std::unordered_map<k, v> and -- associated types (e.g. iterators). In the result, the c_map -- class has an external name of className, and the iterator -- classes are further suffixed with "Iterator" and -- "ConstIterator" respectively. instantiate :: String -> Type -> Type -> Reqs -> Contents -- | instantiate with additional options. instantiate' :: String -> Type -> Type -> Reqs -> Options -> Contents -- | Converts an instantiation into a list of exports to be included in a -- module. toExports :: Contents -> [Export] -- | Bindings for std::set. module Foreign.Hoppy.Generator.Std.Set -- | Options for instantiating the set classes. data Options Options :: [ClassFeature] -> Maybe ValueConversion -> Options -- | Additional features to add to the std::set class. Sets are -- always Assignable, Comparable, and Copyable, but -- you may want to add Equatable if your value type supports -- those. [optSetClassFeatures] :: Options -> [ClassFeature] [optValueConversion] :: Options -> Maybe ValueConversion -- | The default options have no additional ClassFeatures. defaultOptions :: Options -- | A set of instantiated set classes. data Contents Contents :: Class -> Class -> Class -> Contents -- |
--   std::set<T>
--   
[c_set] :: Contents -> Class -- |
--   std::set<T>::iterator
--   
[c_iterator] :: Contents -> Class -- |
--   std::set<T>::const_iterator
--   
[c_constIterator] :: Contents -> Class -- | instantiate className t tReqs creates a set of bindings for -- an instantiation of std::set and associated types (e.g. -- iterators). In the result, the c_set class has an external name -- of className, and the iterator class is further suffixed with -- "Iterator". instantiate :: String -> Type -> Reqs -> Contents -- | instantiate with additional options. instantiate' :: String -> Type -> Reqs -> Options -> Contents -- | Converts an instantiation into a list of exports to be included in a -- module. toExports :: Contents -> [Export] -- | Bindings for std::map. module Foreign.Hoppy.Generator.Std.Map -- | Options for instantiating the map classes. data Options Options :: [ClassFeature] -> Maybe ValueConversion -> Maybe ValueConversion -> Options -- | Additional features to add to the std::map class. Maps are -- always Assignable and Copyable. [optMapClassFeatures] :: Options -> [ClassFeature] -- | How to convert values of the key type. [optKeyConversion] :: Options -> Maybe ValueConversion -- | How to convert values of the value type. [optValueConversion] :: Options -> Maybe ValueConversion -- | The default options have no additional ClassFeatures. defaultOptions :: Options -- | A set of instantiated map classes. data Contents Contents :: Class -> Class -> Class -> Contents -- |
--   std::map<K, V>
--   
[c_map] :: Contents -> Class -- |
--   std::map<K, V>::iterator
--   
[c_iterator] :: Contents -> Class -- |
--   std::map<K, V>::const_iterator
--   
[c_constIterator] :: Contents -> Class -- | instantiate className k v reqs creates a set of bindings for -- an instantiation of std::map<k, v> and associated types -- (e.g. iterators). In the result, the c_map class has an -- external name of className, and the iterator classes are -- further suffixed with "Iterator" and "ConstIterator" -- respectively. instantiate :: String -> Type -> Type -> Reqs -> Contents -- | instantiate with additional options. instantiate' :: String -> Type -> Type -> Reqs -> Options -> Contents -- | Converts an instantiation into a list of exports to be included in a -- module. toExports :: Contents -> [Export] -- | Bindings for std::list. module Foreign.Hoppy.Generator.Std.List -- | Options for instantiating the list classes. data Options Options :: [ClassFeature] -> Maybe ValueConversion -> Options -- | Additional features to add to the std::list class. Lists are -- always Assignable and Copyable, but you may want to add -- Equatable and Comparable if your value type supports -- those. [optListClassFeatures] :: Options -> [ClassFeature] [optValueConversion] :: Options -> Maybe ValueConversion -- | The default options have no additional ClassFeatures. defaultOptions :: Options -- | A set of instantiated list classes. data Contents Contents :: Class -> Class -> Class -> Contents -- |
--   std::list<T>
--   
[c_list] :: Contents -> Class -- |
--   std::list<T>::iterator
--   
[c_iterator] :: Contents -> Class -- |
--   std::list<T>::const_iterator
--   
[c_constIterator] :: Contents -> Class -- | instantiate className t tReqs creates a set of bindings for -- an instantiation of std::list and associated types (e.g. -- iterators). In the result, the c_list class has an external -- name of className, and the iterator classes are further -- suffixed with "Iterator" and "ConstIterator" -- respectively. instantiate :: String -> Type -> Reqs -> Contents -- | instantiate with additional options. instantiate' :: String -> Type -> Reqs -> Options -> Contents -- | Converts an instantiation into a list of exports to be included in a -- module. toExports :: Contents -> [Export]