Constructor for a simple integral type.
Modulelanguage-c-0.9.3Haskell2010
Language.C.Analysis.TypeUtils
- 32 values
- Packagelanguage-c-0.9.3
- Exports32
- LanguageHaskell2010
- LicenceBSD-3-Clause
- SourceTypeUtils.hs
Constructors
16 declarationsConstructor for a simple floating-point type.
A simple pointer with no qualifiers
The underlying type for uint16_t. For now, this is just unsigned short.
The underlying type for uint32_t. For now, this is just unsigned int.
The underlying type for uint64_t. For now, this is just unsigned long long.
The type returned by sizeof (size_t). For now, this is just int.
The type of pointer differences (ptrdiff_t). For now, this is just int.
The type of comparisons/guards. This is always just int.
Simple void type.
An unqualified void pointer.
A const-qualified void pointer.
An unqualified char pointer.
A const-qualified char pointer.
The type of a constant string.
The builtin type of variable-length argument lists.
Classifiers
13 declarationsCheck whether a type is an integral type. This includes enum
types. This function does not attempt to resolve typedef types.
Check whether a type is a floating-point numeric type. This
function does not attempt to resolve typedef types.
Check whether a type is an pointer type. This includes array
types. This function does not attempt to resolve typedef types.
Check whether a type is a scalar type. Scalar types include arithmetic types and pointer types.
return True if the given type is a function type
Result is undefined in the presence of undefined typeDefs
Return the qualifiers of a type.
Return the attributes of a type.
Return the base type of a pointer or array type. It is an error to call this function with a type that is not in one of those two categories.
resolve typedefs, if possible
Attempt to remove all references to typedef types from a given type.
Note that this does not dereference the types of structure or union
fields, so there are still cases where further dereferencing is
needed.
Type comparisons
1 declarationTwo types denote the same type if they are identical, ignoring type definitions, and neither is a variably modified type.