úÎ[üVú]      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\None9;<=?IgInternal type that represents a pointer to a C++ callback object (callback impl object, specifically).+Containers that can be created from a list.For a container Cont! holding values with C-side type Foo and Haskell-side type Bar, if the container uses - then the following instance is recommended: instance FromContents Cont FooIf the container uses - then the following instance is recommended: instance HasContents Cont BarNo instances for  ContConst[ are needed because it is easy enough to cast the resulting collection to a const pointer.?Creates and returns a new container holding the given elements.4Containers whose contents can be convered to a list.For a container Cont! holding values with C-side type Foo and Haskell-side type Bar, if the container uses / then the following instances are recommended: Einstance HasContents ContConst FooConst instance HasContents Cont FooIf the container uses / then the following instances are recommended: @instance HasContents ContConst Bar instance HasContents Cont BarGExtracts the contents of a container, returning the elements in a list.´A typeclass for converting references to C++ values into Haskell values. What this means depends on the type of C++ value. Pointers to numeric types and to other pointers (i.e. ] (] ...))) are decodable by peeking at the value.YFor a C++ class that also has a native Haskell representation (e.g. value types such as  std::string¯), this typeclass allows converting a C++ heap object into a Haskell value based on the defined conversion. Decoding from both the non-const and const objects is supported. See also  . YFor a C++ class that also has a native Haskell representation (e.g. value types such as  std::string”), this typeclass allows converting a Haskell value into a C++ object on the heap. Encoding to both the non-const and const objects is supported.VBecause the functional dependency points in the direction it does, calls of the form   value are ambiguously typed, so ' is provided to resolve the ambiguity.Prefer  over calling  1 directly, to manage the lifetime of the object. See also . `A typeclass for references to C++ values that can be assigned to. This includes raw pointers (]O), as well as pointers to object types that have an assignment operator (see ).  assign x v assigns the value v at the location pointed to by x.SC++ values that can be deleted. All C++ classes bound by Hoppy have instances of  Deletable. Deletes the object with the C++ delete operator.?Converts a pointer to one managed by the garbage collector. A new5 managed pointer is returned, and existing pointers  includingÜ the argument remain unmanaged, becoming invalid once all managed pointers are unreachable. Calling this on an already managed pointer has no effect and the argument is simply returned. It is no longer safe to call Å on the given object after calling this function. It is also not safe to call this function on unmanaged pointers for a single object multiple times: the object will get deleted more than once.sAn instance of this class represents a pointer to a C++ object. All C++ classes bound by Hoppy have instances of CppPtr˜. The lifetime of such an object can optionally be managed by the Haskell garbage collector. Pointers returned from constructors are unmanaged, and 3 converts an unmanaged pointer to a managed one. ( must not be called on managed pointers.Polymorphic null pointer.Runs an IO action on the ]* underlying this pointer. Equivalent to  for managed pointers: the ]q is only guaranteed to be valid until the action returns. There is no such restriction for unmanaged pointers.}Converts to a regular pointer. For objects managed by the garbage collector, this comes with the warnings associated with  f, namely that the object may be collected immediately after this function returns unless there is a  call later on.Equivalent to  D for managed object pointers. Has no effect on unmanaged pointers.*A numeric type representing a C++ boolean..Converts between integral types by going from a to b, and also round-tripping the b value back to an a value. If the two a1 values don't match, then an error is signalled.7Takes a dummy argument to help with type resolution of  , a la ^'. For example, for a C++ pointer type  StdString+ that gets converted to a regular haskell _, the expected usage is: 3str :: String encodeAs (undefined :: StdString) str-Decodes a C++ object to a Haskell value with  %, releases the original object with !, then returns the Haskell value.•Temporarily encodes the Haskell value into a C++ object and passes it to the given function. When the function finishes, the C++ object is deleted.withScopedPtr m f runs m% to get a pointer, which is given to f to execute. When f" finishes, the pointer is deleted.2A global constant function pointer that points to `.U a !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTU   H   a !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUb   !!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef gh ij ik lmno*hoppy-runtime-0.2.1-8CMdYEjJ3Kq5TFolt8oeRtForeign.Hoppy.RuntimeForeign.Hoppy.Generator.Std ConvertPtr ConvertValue)Foreign.Hoppy.Generator.Spec.ClassFeature AssignableForeign.ForeignPtrwithForeignPtrForeign.ForeignPtr.UnsafeunsafeForeignPtrToPtrtouchForeignPtrbaseForeign.C.TypesCUChar CCallback FromContents fromContents HasContents toContents Decodabledecode Encodableencodeassign DeletabledeletetoGcCppPtrnullptr withCppPtrtoPtr touchCppPtrCBoolcoerceIntegralencodeAsdecodeAndDelete withCppObj withScopedPtrfreeHaskellFunPtrFunPtr$fDecodablePtrPtr$fDecodablePtrPtr0$fDecodablePtrPtr1$fDecodablePtrPtr2$fDecodablePtrPtr3$fDecodablePtrPtr4$fDecodablePtrPtr5$fDecodablePtrPtr6$fDecodablePtrPtr7$fDecodablePtrPtr8$fDecodablePtrPtr9$fDecodablePtrPtr10$fDecodablePtrPtr11$fDecodablePtrPtr12$fDecodablePtrPtr13$fDecodablePtrPtr14$fDecodablePtrPtr15$fDecodablePtrPtr16$fDecodablePtrPtr17$fDecodablePtrPtr18$fDecodablePtrPtr19$fDecodablePtrPtr20$fDecodablePtrPtr21$fDecodablePtrPtr22$fDecodablePtrPtr23$fDecodablePtrCSsize$fDecodablePtrCSize$fDecodablePtrCPtrdiff$fDecodablePtrWord64$fDecodablePtrWord32$fDecodablePtrWord16$fDecodablePtrWord8$fDecodablePtrInt64$fDecodablePtrInt32$fDecodablePtrInt16$fDecodablePtrInt8$fDecodablePtrDouble$fDecodablePtrFloat$fDecodablePtrCULLong$fDecodablePtrCLLong$fDecodablePtrCULong$fDecodablePtrCLong$fDecodablePtrCUInt$fDecodablePtrInt$fDecodablePtrCUShort$fDecodablePtrCShort$fDecodablePtrCUChar$fDecodablePtrCChar$fDecodablePtrBool$fAssignablePtra$fAssignablePtrDouble$fAssignablePtrFloat$fAssignablePtrInt$fAssignablePtrBool $fEnumCBool$fBoundedCBool $fEqCBool$fIntegralCBool $fNumCBool $fOrdCBool $fRealCBool $fShowCBool$fStorableCBoolGHC.PtrPtrGHC.BaseasTypeOfString Foreign.PtrfreeHaskellFunPtrnewFreeHaskellFunPtrFunPtr