fficxx-0.6: Automatic C++ binding generation
Safe HaskellNone
LanguageHaskell2010

FFICXX.Generate.Type.Class

Synopsis

Documentation

data CPPTypes Source #

C++ types

Instances

Instances details
Show CPPTypes Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

data IsConst Source #

const flag

Constructors

Const 
NoConst 

Instances

Instances details
Show IsConst Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

data TemplateArgType Source #

Argument type which can be used as an template argument like float in vectorfloat. For now, this distinguishes Class and non-Class.

Instances

Instances details
Show TemplateArgType Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

data Types Source #

Supported C++ types.

Constructors

Void 
SelfType 
CT CTypes IsConst 
CPT CPPTypes IsConst 
TemplateApp TemplateAppInfo

like vectorfloat*

TemplateAppRef TemplateAppInfo

like vectorfloat&

TemplateAppMove TemplateAppInfo

like unique_ptrfloat (using std::move)

TemplateType TemplateClass

template self? TODO: clarify this.

TemplateParam String 
TemplateParamPointer String

this is A* with templateA

Instances

Instances details
Show Types Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

Methods

showsPrec :: Int -> Types -> ShowS #

show :: Types -> String #

showList :: [Types] -> ShowS #

data Arg Source #

Function argument, type and variable name.

Constructors

Arg 

Fields

Instances

Instances details
Show Arg Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

Methods

showsPrec :: Int -> Arg -> ShowS #

show :: Arg -> String #

showList :: [Arg] -> ShowS #

data Function Source #

Regular member functions in a ordinary class

Instances

Instances details
Show Function Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

newtype Variable Source #

Member variable. Isomorphic to Arg

Constructors

Variable 

Fields

Instances

Instances details
Show Variable Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

data TemplateMemberFunction Source #

Member functions of a template class.

data TopLevel Source #

Function defined at top level like ordinary C functions, i.e. no owning class.

Instances

Instances details
Show TopLevel Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

data OpExp Source #

Constructors

OpStar

unary * (deRef) operator

OpFPPlus

unary prefix ++ operator | OpAdd Arg Arg | OpMul Arg Arg

data TemplateFunction Source #

Constructors

TFun 

Fields

TFunNew 
TFunDelete 
TFunOp 

Fields

data Form Source #

Positional string interpolation form. For example, "std::mapK,V::iterator" is FormNested "std::map" "iterator"].

data Selfness Source #

Constructors

Self 
NoSelf 

isAbstractClass :: Class -> Bool Source #

Check abstract class

hasProxy :: Class -> Bool Source #

Check having Proxy

data Accessor Source #

Constructors

Getter 
Setter 

Instances

Instances details
Eq Accessor Source # 
Instance details

Defined in FFICXX.Generate.Type.Class

Show Accessor Source # 
Instance details

Defined in FFICXX.Generate.Type.Class