JavaScript is not currently enabled, but is required for full CodeSonar manual search and browse functionality.

If you are viewing this file in your hub's Web GUI, enable JavaScript in your browser: you will also need it for GUI functionality.

If you opened this file directly from disk, your browser may be directly suppressing JavaScript functionality: certain browsers perform this suppression on local files (but not files delivered by web servers) for security reasons.

CodeSonar® 9.2p0 CONFIDENTIAL CodeSecure Inc
C and C++

C/C++ Normalized AST Classes

This is the class hierarchy for normalized C/C++ ASTs.

The family for these ASTs is represented in the various API implementations as follows.



API Usage

When specifying AST patterns, always use canonical class names and field labels as shown in the class documentation.

For example, pattern (c:= :type (c:integer)) matches an AST of class c:= whose :type attribute is an AST of class c:integer. All API implementations use these class and ordinal names for pattern specification, as shown in the following table.

API ImplementationPattern Example
C++ cs::ast_pattern("(c:= :type (c:integer))")
Python cs.ast_pattern("(c:= :type (c:integer))")
C cs_ast_pattern_compile("(c:= :type (c:integer))", pat, err, errloc)

Otherwise, use the API-implementation-specific representations of classes and ordinals.

For example:

API ImplementationExample
C++
  • ast.is_a(cs::ast_class::UC_ABSTRACT_CONSTANT)
  • ast[cs.ast_ordinal.NC_SIZE]
Python
  • ast.is_a(cs.ast_class.UC_ABSTRACT_CONSTANT)
  • ast[cs.ast_ordinal.NC_SIZE]
C

AST Classes

CLASS c:ast
API Representation
C++cs::ast_class::NC_ABSTRACT_AST
Pythoncs.ast_class.NC_ABSTRACT_AST
Ccsac_nc_abstract_ast
Canonical namec:ast
Superclass ast-root
Subclasses
Notes The root class of all normalized ASTs.
CLASS c:statement
API Representation
C++cs::ast_class::NC_ABSTRACT_STATEMENT
Pythoncs.ast_class.NC_ABSTRACT_STATEMENT
Ccsac_nc_abstract_statement
Canonical namec:statement
Superclass c:ast
Subclasses
Notes Abstract base class for statements.
CLASS c:rvalue
API Representation
C++cs::ast_class::NC_ABSTRACT_RVALUE
Pythoncs.ast_class.NC_ABSTRACT_RVALUE
Ccsac_nc_abstract_rvalue
Canonical namec:rvalue
Superclass c:statement
Subclasses
Notes Abstract base class for expressions that can appear on the right-hand side of an assignmment expression.
CLASS c:lvalue
API Representation
C++cs::ast_class::NC_ABSTRACT_LVALUE
Pythoncs.ast_class.NC_ABSTRACT_LVALUE
Ccsac_nc_abstract_lvalue
Canonical namec:lvalue
Superclass c:rvalue
Subclasses
Notes Abstract base class for expressions that can appear on the left hand side of an assignment operator.
CLASS c:logical
API Representation
C++cs::ast_class::NC_ABSTRACT_LOGICAL
Pythoncs.ast_class.NC_ABSTRACT_LOGICAL
Ccsac_nc_abstract_logical
Canonical namec:logical
Superclass c:rvalue
Subclasses
Notes Abstract base class for logical expressions.
CLASS c:bitwise
API Representation
C++cs::ast_class::NC_ABSTRACT_BITWISE
Pythoncs.ast_class.NC_ABSTRACT_BITWISE
Ccsac_nc_abstract_bitwise
Canonical namec:bitwise
Superclass c:rvalue
Subclasses
Notes Abstract base class for bitwise expressions.
CLASS c:arithmetic
API Representation
C++cs::ast_class::NC_ABSTRACT_ARITHMETIC
Pythoncs.ast_class.NC_ABSTRACT_ARITHMETIC
Ccsac_nc_abstract_arithmetic
Canonical namec:arithmetic
Superclass c:rvalue
Subclasses
Notes Abstract base class for arithmetic expressions.
CLASS c:literal
API Representation
C++cs::ast_class::NC_ABSTRACT_LITERAL
Pythoncs.ast_class.NC_ABSTRACT_LITERAL
Ccsac_nc_abstract_literal
Canonical namec:literal
Superclass c:rvalue
Subclasses
Notes Abstract base class for classes that represent literal values, such as strings or constants.
CLASS c:integer-value
API Representation
C++cs::ast_class::NC_ABSTRACT_INTEGER_VALUE
Pythoncs.ast_class.NC_ABSTRACT_INTEGER_VALUE
Ccsac_nc_abstract_integer_value
Canonical namec:integer-value
Superclass c:literal
Subclasses
Notes Abstract base class for integers.
CLASS c:float-value
API Representation
C++cs::ast_class::NC_ABSTRACT_FLOAT_VALUE
Pythoncs.ast_class.NC_ABSTRACT_FLOAT_VALUE
Ccsac_nc_abstract_float_value
Canonical namec:float-value
Superclass c:literal
Subclasses
Notes Abstract base class for floating-point numbers.
CLASS c:sizeof
API Representation
C++cs::ast_class::NC_ABSTRACT_SIZEOF
Pythoncs.ast_class.NC_ABSTRACT_SIZEOF
Ccsac_nc_abstract_sizeof
Canonical namec:sizeof
Superclass c:rvalue
Subclasses
Notes Abstract base class for sizeof expressions.
CLASS c:alignof
API Representation
C++cs::ast_class::NC_ABSTRACT_ALIGNOF
Pythoncs.ast_class.NC_ABSTRACT_ALIGNOF
Ccsac_nc_abstract_alignof
Canonical namec:alignof
Superclass c:rvalue
Subclasses
Notes Abstract base class for alignof expressions.
CLASS c:typeid
API Representation
C++cs::ast_class::NC_ABSTRACT_TYPEID
Pythoncs.ast_class.NC_ABSTRACT_TYPEID
Ccsac_nc_abstract_typeid
Canonical namec:typeid
Superclass c:lvalue
Subclasses
Notes Abstract base class for typeid expressions.
CLASS c:asm-entry
API Representation
C++cs::ast_class::NC_ABSTRACT_ASM_ENTRY
Pythoncs.ast_class.NC_ABSTRACT_ASM_ENTRY
Ccsac_nc_abstract_asm_entry
Canonical namec:asm-entry
Superclass c:statement
Subclasses
Notes Abstract base class for asm statements and instructions.
CLASS c:type
API Representation
C++cs::ast_class::NC_ABSTRACT_TYPE
Pythoncs.ast_class.NC_ABSTRACT_TYPE
Ccsac_nc_abstract_type
Canonical namec:type
Superclass c:ast
Subclasses
Notes Abstract base class for types.
CLASS c:abstract-float
API Representation
C++cs::ast_class::NC_ABSTRACT_FLOAT
Pythoncs.ast_class.NC_ABSTRACT_FLOAT
Ccsac_nc_abstract_float
Canonical namec:abstract-float
Superclass c:type
Subclasses
Notes Abstract base class for real and imaginary floating point types.
CLASS c:class-struct-union
API Representation
C++cs::ast_class::NC_ABSTRACT_CLASS_STRUCT_UNION
Pythoncs.ast_class.NC_ABSTRACT_CLASS_STRUCT_UNION
Ccsac_nc_abstract_class_struct_union
Canonical namec:class-struct-union
Superclass c:type
Subclasses
Notes Abstract base class for class, struct, and union types.
CLASS c:field-or-base-class
API Representation
C++cs::ast_class::NC_ABSTRACT_FIELD_OR_BASE_CLASS
Pythoncs.ast_class.NC_ABSTRACT_FIELD_OR_BASE_CLASS
Ccsac_nc_abstract_field_or_base_class
Canonical namec:field-or-base-class
Superclass c:ast
Subclasses
Notes Abstract base class for fields and base classes.
CLASS c:class-access
API Representation
C++cs::ast_class::NC_ABSTRACT_CLASS_ACCESS
Pythoncs.ast_class.NC_ABSTRACT_CLASS_ACCESS
Ccsac_nc_abstract_class_access
Canonical namec:class-access
Superclass c:lvalue
Subclasses
Notes Abstract base class casts between base classes and derived classes.
CLASS c:file-info
API Representation
C++cs::ast_class::NC_FILE_INFO
Pythoncs.ast_class.NC_FILE_INFO
Ccsac_nc_file_info
Canonical namec:file-info
Superclass c:ast
Attributes
:abi
C++ cs::ast_ordinal::NC_ABI
Python cs.ast_ordinal.NC_ABI
C csao_nc_abi
c:abi
:language-features
C++ cs::ast_ordinal::NC_LANGUAGE_FEATURES
Python cs.ast_ordinal.NC_LANGUAGE_FEATURES
C csao_nc_language_features
c:language-features
Notes
CLASS c:language-features
API Representation
C++cs::ast_class::NC_LANGUAGE_FEATURES
Pythoncs.ast_class.NC_LANGUAGE_FEATURES
Ccsac_nc_language_features
Canonical namec:language-features
Superclass c:ast
Attributes
:rvalue-references
C++ cs::ast_ordinal::NC_RVALUE_REFERENCES
Python cs.ast_ordinal.NC_RVALUE_REFERENCES
C csao_nc_rvalue_references
BOOLEAN
Notes
CLASS c:abi
API Representation
C++cs::ast_class::NC_ABI
Pythoncs.ast_class.NC_ABI
Ccsac_nc_abi
Canonical namec:abi
Superclass c:ast
Attributes
:char
C++ cs::ast_ordinal::NC_CHAR
Python cs.ast_ordinal.NC_CHAR
C csao_nc_char
c:base-type
:short
C++ cs::ast_ordinal::NC_SHORT
Python cs.ast_ordinal.NC_SHORT
C csao_nc_short
c:base-type
:int
C++ cs::ast_ordinal::NC_INT
Python cs.ast_ordinal.NC_INT
C csao_nc_int
c:base-type
:long
C++ cs::ast_ordinal::NC_LONG
Python cs.ast_ordinal.NC_LONG
C csao_nc_long
c:base-type
:long-long
C++ cs::ast_ordinal::NC_LONG_LONG
Python cs.ast_ordinal.NC_LONG_LONG
C csao_nc_long_long
c:base-type
:pointer
C++ cs::ast_ordinal::NC_POINTER
Python cs.ast_ordinal.NC_POINTER
C csao_nc_pointer
c:base-type
:float
C++ cs::ast_ordinal::NC_FLOAT
Python cs.ast_ordinal.NC_FLOAT
C csao_nc_float
c:base-type
:double
C++ cs::ast_ordinal::NC_DOUBLE
Python cs.ast_ordinal.NC_DOUBLE
C csao_nc_double
c:base-type
:long-double
C++ cs::ast_ordinal::NC_LONG_DOUBLE
Python cs.ast_ordinal.NC_LONG_DOUBLE
C csao_nc_long_double
c:base-type
:ptr-to-data-member
C++ cs::ast_ordinal::NC_PTR_TO_DATA_MEMBER
Python cs.ast_ordinal.NC_PTR_TO_DATA_MEMBER
C csao_nc_ptr_to_data_member
c:base-type
:ptr-to-member-function
C++ cs::ast_ordinal::NC_PTR_TO_MEMBER_FUNCTION
Python cs.ast_ordinal.NC_PTR_TO_MEMBER_FUNCTION
C csao_nc_ptr_to_member_function
c:base-type
:virtual-function-info
C++ cs::ast_ordinal::NC_VIRTUAL_FUNCTION_INFO
Python cs.ast_ordinal.NC_VIRTUAL_FUNCTION_INFO
C csao_nc_virtual_function_info
c:base-type
:ptr-to-virtual-base-class
C++ cs::ast_ordinal::NC_PTR_TO_VIRTUAL_BASE_CLASS
Python cs.ast_ordinal.NC_PTR_TO_VIRTUAL_BASE_CLASS
C csao_nc_ptr_to_virtual_base_class
c:base-type
:wchar-t
C++ cs::ast_ordinal::NC_WCHAR_T
Python cs.ast_ordinal.NC_WCHAR_T
C csao_nc_wchar_t
c:alias-type
:wint-t
C++ cs::ast_ordinal::NC_WINT_T
Python cs.ast_ordinal.NC_WINT_T
C csao_nc_wint_t
c:alias-type
:char16-t
C++ cs::ast_ordinal::NC_CHAR16_T
Python cs.ast_ordinal.NC_CHAR16_T
C csao_nc_char16_t
c:alias-type
:char32-t
C++ cs::ast_ordinal::NC_CHAR32_T
Python cs.ast_ordinal.NC_CHAR32_T
C csao_nc_char32_t
c:alias-type
:bool
C++ cs::ast_ordinal::NC_BOOL
Python cs.ast_ordinal.NC_BOOL
C csao_nc_bool
c:alias-type
:ptrdiff-t
C++ cs::ast_ordinal::NC_PTRDIFF_T
Python cs.ast_ordinal.NC_PTRDIFF_T
C csao_nc_ptrdiff_t
c:alias-type
:size-t
C++ cs::ast_ordinal::NC_SIZE_T
Python cs.ast_ordinal.NC_SIZE_T
C csao_nc_size_t
c:alias-type
:intmax
C++ cs::ast_ordinal::NC_INTMAX
Python cs.ast_ordinal.NC_INTMAX
C csao_nc_intmax
c:alias-type
:uintmax
C++ cs::ast_ordinal::NC_UINTMAX
Python cs.ast_ordinal.NC_UINTMAX
C csao_nc_uintmax
c:alias-type
:char-bit
C++ cs::ast_ordinal::NC_CHAR_BIT
Python cs.ast_ordinal.NC_CHAR_BIT
C csao_nc_char_bit
UINT64
:signed-chars
C++ cs::ast_ordinal::NC_SIGNED_CHARS
Python cs.ast_ordinal.NC_SIGNED_CHARS
C csao_nc_signed_chars
BOOLEAN
:enum-types-can-be-smaller-than-int
C++ cs::ast_ordinal::NC_ENUM_TYPES_CAN_BE_SMALLER_THAN_INT
Python cs.ast_ordinal.NC_ENUM_TYPES_CAN_BE_SMALLER_THAN_INT
C csao_nc_enum_types_can_be_smaller_than_int
BOOLEAN
:bit-field-container-size
C++ cs::ast_ordinal::NC_BIT_FIELD_CONTAINER_SIZE
Python cs.ast_ordinal.NC_BIT_FIELD_CONTAINER_SIZE
C csao_nc_bit_field_container_size
INT64
:plain-int-bit-field-is-unsigned
C++ cs::ast_ordinal::NC_PLAIN_INT_BIT_FIELD_IS_UNSIGNED
Python cs.ast_ordinal.NC_PLAIN_INT_BIT_FIELD_IS_UNSIGNED
C csao_nc_plain_int_bit_field_is_unsigned
BOOLEAN
:microsoft-bit-field-allocation
C++ cs::ast_ordinal::NC_MICROSOFT_BIT_FIELD_ALLOCATION
Python cs.ast_ordinal.NC_MICROSOFT_BIT_FIELD_ALLOCATION
C csao_nc_microsoft_bit_field_allocation
BOOLEAN
:force-one-bit-bit-field-to-be-unsigned
C++ cs::ast_ordinal::NC_FORCE_ONE_BIT_BIT_FIELD_TO_BE_UNSIGNED
Python cs.ast_ordinal.NC_FORCE_ONE_BIT_BIT_FIELD_TO_BE_UNSIGNED
C csao_nc_force_one_bit_bit_field_to_be_unsigned
BOOLEAN
:enum-bit-fields-are-always-unsigned
C++ cs::ast_ordinal::NC_ENUM_BIT_FIELDS_ARE_ALWAYS_UNSIGNED
Python cs.ast_ordinal.NC_ENUM_BIT_FIELDS_ARE_ALWAYS_UNSIGNED
C csao_nc_enum_bit_fields_are_always_unsigned
BOOLEAN
:nonnegative-enum-bit-field-is-unsigned
C++ cs::ast_ordinal::NC_NONNEGATIVE_ENUM_BIT_FIELD_IS_UNSIGNED
Python cs.ast_ordinal.NC_NONNEGATIVE_ENUM_BIT_FIELD_IS_UNSIGNED
C csao_nc_nonnegative_enum_bit_field_is_unsigned
BOOLEAN
:zero-width-bit-field-alignment
C++ cs::ast_ordinal::NC_ZERO_WIDTH_BIT_FIELD_ALIGNMENT
Python cs.ast_ordinal.NC_ZERO_WIDTH_BIT_FIELD_ALIGNMENT
C csao_nc_zero_width_bit_field_alignment
INT64
:zero-width-bit-field-affects-struct-alignment
C++ cs::ast_ordinal::NC_ZERO_WIDTH_BIT_FIELD_AFFECTS_STRUCT_ALIGNMENT
Python cs.ast_ordinal.NC_ZERO_WIDTH_BIT_FIELD_AFFECTS_STRUCT_ALIGNMENT
C csao_nc_zero_width_bit_field_affects_struct_alignment
BOOLEAN
:unnamed-bit-field-affects-struct-alignment
C++ cs::ast_ordinal::NC_UNNAMED_BIT_FIELD_AFFECTS_STRUCT_ALIGNMENT
Python cs.ast_ordinal.NC_UNNAMED_BIT_FIELD_AFFECTS_STRUCT_ALIGNMENT
C csao_nc_unnamed_bit_field_affects_struct_alignment
BOOLEAN
:user-control-of-struct-packing-affects-bit-fields
C++ cs::ast_ordinal::NC_USER_CONTROL_OF_STRUCT_PACKING_AFFECTS_BIT_FIELDS
Python cs.ast_ordinal.NC_USER_CONTROL_OF_STRUCT_PACKING_AFFECTS_BIT_FIELDS
C csao_nc_user_control_of_struct_packing_affects_bit_fields
BOOLEAN
:pad-bit-fields-larger-than-base-type
C++ cs::ast_ordinal::NC_PAD_BIT_FIELDS_LARGER_THAN_BASE_TYPE
Python cs.ast_ordinal.NC_PAD_BIT_FIELDS_LARGER_THAN_BASE_TYPE
C csao_nc_pad_bit_fields_larger_than_base_type
BOOLEAN
:right-shift-is-arithmetic
C++ cs::ast_ordinal::NC_RIGHT_SHIFT_IS_ARITHMETIC
Python cs.ast_ordinal.NC_RIGHT_SHIFT_IS_ARITHMETIC
C csao_nc_right_shift_is_arithmetic
BOOLEAN
:too-large-shift-count-is-taken-modulo-size
C++ cs::ast_ordinal::NC_TOO_LARGE_SHIFT_COUNT_IS_TAKEN_MODULO_SIZE
Python cs.ast_ordinal.NC_TOO_LARGE_SHIFT_COUNT_IS_TAKEN_MODULO_SIZE
C csao_nc_too_large_shift_count_is_taken_modulo_size
BOOLEAN
:minimum-struct-alignment
C++ cs::ast_ordinal::NC_MINIMUM_STRUCT_ALIGNMENT
Python cs.ast_ordinal.NC_MINIMUM_STRUCT_ALIGNMENT
C csao_nc_minimum_struct_alignment
ALIGNMENT
:minimum-pack-alignment
C++ cs::ast_ordinal::NC_MINIMUM_PACK_ALIGNMENT
Python cs.ast_ordinal.NC_MINIMUM_PACK_ALIGNMENT
C csao_nc_minimum_pack_alignment
ALIGNMENT
:maximum-pack-alignment
C++ cs::ast_ordinal::NC_MAXIMUM_PACK_ALIGNMENT
Python cs.ast_ordinal.NC_MAXIMUM_PACK_ALIGNMENT
C csao_nc_maximum_pack_alignment
ALIGNMENT
:maximum-intrinsic-alignment
C++ cs::ast_ordinal::NC_MAXIMUM_INTRINSIC_ALIGNMENT
Python cs.ast_ordinal.NC_MAXIMUM_INTRINSIC_ALIGNMENT
C csao_nc_maximum_intrinsic_alignment
ALIGNMENT
:size-t-max
C++ cs::ast_ordinal::NC_SIZE_T_MAX
Python cs.ast_ordinal.NC_SIZE_T_MAX
C csao_nc_size_t_max
SIZE_T
:size-t-max-use-default
C++ cs::ast_ordinal::NC_SIZE_T_MAX_USE_DEFAULT
Python cs.ast_ordinal.NC_SIZE_T_MAX_USE_DEFAULT
C csao_nc_size_t_max_use_default
BOOLEAN
:endianness
C++ cs::ast_ordinal::NC_ENDIANNESS
Python cs.ast_ordinal.NC_ENDIANNESS
C csao_nc_endianness
endianness
:proxy-entries
C++ cs::ast_ordinal::NC_PROXY_ENTRIES
Python cs.ast_ordinal.NC_PROXY_ENTRIES
C csao_nc_proxy_entries
c:ast-list
:user-entries
C++ cs::ast_ordinal::NC_USER_ENTRIES
Python cs.ast_ordinal.NC_USER_ENTRIES
C csao_nc_user_entries
c:ast-list
Notes
CLASS c:base-type
API Representation
C++cs::ast_class::NC_BASE_TYPE
Pythoncs.ast_class.NC_BASE_TYPE
Ccsac_nc_base_type
Canonical namec:base-type
Superclass c:ast
Attributes
:type-kind
C++ cs::ast_ordinal::NC_TYPE_KIND
Python cs.ast_ordinal.NC_TYPE_KIND
C csao_nc_type_kind
base_type_kind
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
SIZE_T
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
ALIGNMENT
:field-alignment
C++ cs::ast_ordinal::NC_FIELD_ALIGNMENT
Python cs.ast_ordinal.NC_FIELD_ALIGNMENT
C csao_nc_field_alignment
ALIGNMENT
Notes
CLASS c:alias-type
API Representation
C++cs::ast_class::NC_ALIAS_TYPE
Pythoncs.ast_class.NC_ALIAS_TYPE
Ccsac_nc_alias_type
Canonical namec:alias-type
Superclass c:ast
Attributes
:base-type
C++ cs::ast_ordinal::NC_BASE_TYPE
Python cs.ast_ordinal.NC_BASE_TYPE
C csao_nc_base_type
c:base-type
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
SIZE_T
Notes
CLASS c:exprs
API Representation
C++cs::ast_class::NC_EXPRS
Pythoncs.ast_class.NC_EXPRS
Ccsac_nc_exprs
Canonical namec:exprs
Superclass c:rvalue
Children
:1 .. :n
C++, Python, C 1 ..n
c:ast
The expressions in the list, in order.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes An expression list.
CLASS c:=
API Representation
C++cs::ast_class::NC_NORMALASSIGN
Pythoncs.ast_class.NC_NORMALASSIGN
Ccsac_nc_normalassign
Canonical namec:=
Superclass c:statement
Children
:1
C++, Python, C 1
c:lvalue
The first operand of the assignment.
:2
C++, Python, C 2
c:rvalue
The second operand of the assignment.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:is-initialization
C++ cs::ast_ordinal::NC_IS_INITIALIZATION
Python cs.ast_ordinal.NC_IS_INITIALIZATION
C csao_nc_is_initialization
BOOLEAN
true if this is an initialization of the first operand.
:atomic-kind
C++ cs::ast_ordinal::NC_ATOMIC_KIND
Python cs.ast_ordinal.NC_ATOMIC_KIND
C csao_nc_atomic_kind
atomic_kind
Indicates whether the assignment was generated as part of an explicit atomic initialization, store, or load. Assignments that are part of more complex operations such as exchange are not currently marked.
Notes Assignment operator
CLASS c:bit-or
API Representation
C++cs::ast_class::NC_INCLUSIVEOR
Pythoncs.ast_class.NC_INCLUSIVEOR
Ccsac_nc_inclusiveor
Canonical namec:bit-or
Superclass c:bitwise
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Bitwise OR.
CLASS c:^
API Representation
C++cs::ast_class::NC_EXCLUSIVEOR
Pythoncs.ast_class.NC_EXCLUSIVEOR
Ccsac_nc_exclusiveor
Canonical namec:^
Superclass c:bitwise
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Bitwise XOR.
CLASS c:&
API Representation
C++cs::ast_class::NC_BITANDEXPR
Pythoncs.ast_class.NC_BITANDEXPR
Ccsac_nc_bitandexpr
Canonical namec:&
Superclass c:bitwise
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Bitwise AND.
CLASS c:==
API Representation
C++cs::ast_class::NC_EQUALEXPR
Pythoncs.ast_class.NC_EQUALEXPR
Ccsac_nc_equalexpr
Canonical namec:==
Superclass c:logical
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Equality expression.
CLASS c:!=
API Representation
C++cs::ast_class::NC_NOTEQUALEXPR
Pythoncs.ast_class.NC_NOTEQUALEXPR
Ccsac_nc_notequalexpr
Canonical namec:!=
Superclass c:logical
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Inequality expression.
CLASS c:<
API Representation
C++cs::ast_class::NC_LESSEXPR
Pythoncs.ast_class.NC_LESSEXPR
Ccsac_nc_lessexpr
Canonical namec:<
Superclass c:logical
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Less than expression.
CLASS c:>
API Representation
C++cs::ast_class::NC_GREATEXPR
Pythoncs.ast_class.NC_GREATEXPR
Ccsac_nc_greatexpr
Canonical namec:>
Superclass c:logical
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Greater than expression.
CLASS c:<=
API Representation
C++cs::ast_class::NC_LESSEQUALEXPR
Pythoncs.ast_class.NC_LESSEQUALEXPR
Ccsac_nc_lessequalexpr
Canonical namec:<=
Superclass c:logical
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Less than or equal to expression.
CLASS c:>=
API Representation
C++cs::ast_class::NC_GREATEQUALEXPR
Pythoncs.ast_class.NC_GREATEQUALEXPR
Ccsac_nc_greatequalexpr
Canonical namec:>=
Superclass c:logical
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Greater than or equal to expression.
CLASS c:<<
API Representation
C++cs::ast_class::NC_LEFTSHIFTEXPR
Pythoncs.ast_class.NC_LEFTSHIFTEXPR
Ccsac_nc_leftshiftexpr
Canonical namec:<<
Superclass c:bitwise
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Bitwise left shift.
CLASS c:>>
API Representation
C++cs::ast_class::NC_RIGHTSHIFTEXPR
Pythoncs.ast_class.NC_RIGHTSHIFTEXPR
Ccsac_nc_rightshiftexpr
Canonical namec:>>
Superclass c:bitwise
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Bitwise right shift.
CLASS c:+
API Representation
C++cs::ast_class::NC_ADDEXPR
Pythoncs.ast_class.NC_ADDEXPR
Ccsac_nc_addexpr
Canonical namec:+
Superclass c:arithmetic
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Addition expression.
CLASS c:-
API Representation
C++cs::ast_class::NC_SUBEXPR
Pythoncs.ast_class.NC_SUBEXPR
Ccsac_nc_subexpr
Canonical namec:-
Superclass c:arithmetic
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Subtraction expression.
CLASS c:*
API Representation
C++cs::ast_class::NC_MULEXPR
Pythoncs.ast_class.NC_MULEXPR
Ccsac_nc_mulexpr
Canonical namec:*
Superclass c:arithmetic
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Multiplication expression.
CLASS c:/
API Representation
C++cs::ast_class::NC_DIVEXPR
Pythoncs.ast_class.NC_DIVEXPR
Ccsac_nc_divexpr
Canonical namec:/
Superclass c:arithmetic
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Division expression.
CLASS c:%
API Representation
C++cs::ast_class::NC_MODEXPR
Pythoncs.ast_class.NC_MODEXPR
Ccsac_nc_modexpr
Canonical namec:%
Superclass c:arithmetic
Children
:1
C++, Python, C 1
c:rvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Modulus expression.
CLASS c:cast
API Representation
C++cs::ast_class::NC_CASTEXPR
Pythoncs.ast_class.NC_CASTEXPR
Ccsac_nc_castexpr
Canonical namec:cast
Superclass c:rvalue
Children
:1
C++, Python, C 1
c:type
The type - identical to the csao_nc_type attribute.
:2
C++, Python, C 2
c:rvalue
The expression being cast.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:compiler-generated
C++ cs::ast_ordinal::NC_COMPILER_GENERATED
Python cs.ast_ordinal.NC_COMPILER_GENERATED
C csao_nc_compiler_generated
BOOLEAN
Notes A type cast.
CLASS c:sizeof-expr
API Representation
C++cs::ast_class::NC_SIZEEXPR
Pythoncs.ast_class.NC_SIZEEXPR
Ccsac_nc_sizeexpr
Canonical namec:sizeof-expr
Superclass c:sizeof
Children
:1
C++, Python, C 1
c:rvalue
The operand of the sizeof operator.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes sizeof operator applied to an expression.
CLASS c:sizeof-type
API Representation
C++cs::ast_class::NC_SIZETYPEEXPR
Pythoncs.ast_class.NC_SIZETYPEEXPR
Ccsac_nc_sizetypeexpr
Canonical namec:sizeof-type
Superclass c:sizeof
Children
:1
C++, Python, C 1
c:type
The operand of the sizeof operator.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes sizeof operator applied to a type expression.
CLASS c:alignof-expr
API Representation
C++cs::ast_class::NC_ALIGNOFEXPR
Pythoncs.ast_class.NC_ALIGNOFEXPR
Ccsac_nc_alignofexpr
Canonical namec:alignof-expr
Superclass c:alignof
Children
:1
C++, Python, C 1
c:rvalue
The operand of the alignof operator.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes alignof operator applied to an expression.
CLASS c:alignof-type
API Representation
C++cs::ast_class::NC_ALIGNOFTYPEEXPR
Pythoncs.ast_class.NC_ALIGNOFTYPEEXPR
Ccsac_nc_alignoftypeexpr
Canonical namec:alignof-type
Superclass c:alignof
Children
:1
C++, Python, C 1
c:type
The operand of the alignof operator.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes alignof operator applied to a type expression.
CLASS c:addr
API Representation
C++cs::ast_class::NC_ADDREXPR
Pythoncs.ast_class.NC_ADDREXPR
Ccsac_nc_addrexpr
Canonical namec:addr
Superclass c:rvalue
Children
:1
C++, Python, C 1
c:lvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Address operator (&).
CLASS c:ptr
API Representation
C++cs::ast_class::NC_POINTEREXPR
Pythoncs.ast_class.NC_POINTEREXPR
Ccsac_nc_pointerexpr
Canonical namec:ptr
Superclass c:lvalue
Children
:1
C++, Python, C 1
c:rvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Pointer dereference (*).
CLASS c:unary+
API Representation
C++cs::ast_class::NC_UNARYPLUSEXPR
Pythoncs.ast_class.NC_UNARYPLUSEXPR
Ccsac_nc_unaryplusexpr
Canonical namec:unary+
Superclass c:arithmetic
Children
:1
C++, Python, C 1
c:rvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Unary plus.
CLASS c:unary-
API Representation
C++cs::ast_class::NC_UNARYMINUSEXPR
Pythoncs.ast_class.NC_UNARYMINUSEXPR
Ccsac_nc_unaryminusexpr
Canonical namec:unary-
Superclass c:arithmetic
Children
:1
C++, Python, C 1
c:rvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Unary minus.
CLASS c:~
API Representation
C++cs::ast_class::NC_COMPLEMENTEXPR
Pythoncs.ast_class.NC_COMPLEMENTEXPR
Ccsac_nc_complementexpr
Canonical namec:~
Superclass c:bitwise
Children
:1
C++, Python, C 1
c:rvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Bitwise complement.
CLASS c:array-ref
API Representation
C++cs::ast_class::NC_ARRAYREF
Pythoncs.ast_class.NC_ARRAYREF
Ccsac_nc_arrayref
Canonical namec:array-ref
Superclass c:lvalue
Children
:1
C++, Python, C 1
c:lvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes An array reference ([]).
CLASS c:dot
API Representation
C++cs::ast_class::NC_STRUCTORUNIONREF
Pythoncs.ast_class.NC_STRUCTORUNIONREF
Ccsac_nc_structorunionref
Canonical namec:dot
Superclass c:lvalue
Children
:1
C++, Python, C 1
c:lvalue
The first operand of the expression.
:2
C++, Python, C 2
c:field
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Reference to a field of a struct, union, or (C++ only) class variable (.).
CLASS c:typeid-expr
API Representation
C++cs::ast_class::NC_TYPEIDEXPR
Pythoncs.ast_class.NC_TYPEIDEXPR
Ccsac_nc_typeidexpr
Canonical namec:typeid-expr
Superclass c:typeid
Children
:1
C++, Python, C 1
c:rvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes (C++ only) A typeid expression whose operand is an expression.
CLASS c:typeid-type
API Representation
C++cs::ast_class::NC_TYPEIDTYPEEXPR
Pythoncs.ast_class.NC_TYPEIDTYPEEXPR
Ccsac_nc_typeidtypeexpr
Canonical namec:typeid-type
Superclass c:typeid
Children
:1
C++, Python, C 1
c:type
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes (C++ only) A typeid expression whose operand is a type.
CLASS c:assume-expr
API Representation
C++cs::ast_class::NC_ASSUMEEXPR
Pythoncs.ast_class.NC_ASSUMEEXPR
Ccsac_nc_assumeexpr
Canonical namec:assume-expr
Superclass c:statement
Children
:1
C++, Python, C 1
c:rvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes (Microsoft only) The assume statement (__assume).
CLASS c:ptr-member
API Representation
C++cs::ast_class::NC_INDIRECTFIELD
Pythoncs.ast_class.NC_INDIRECTFIELD
Ccsac_nc_indirectfield
Canonical namec:ptr-member
Superclass c:lvalue
Children
:1
C++, Python, C 1
c:lvalue
The first operand of the expression.
:2
C++, Python, C 2
c:rvalue
The second operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes (C++ only) A pointer to a member expression ::* (see Section 8.3.3 [dcl.mptr] in the C++ standard [ISO/IEC 14882]).
CLASS c:addrlabel
API Representation
C++cs::ast_class::NC_ADDRLABELEXPR
Pythoncs.ast_class.NC_ADDRLABELEXPR
Ccsac_nc_addrlabelexpr
Canonical namec:addrlabel
Superclass c:rvalue
Children
:1
C++, Python, C 1
c:label
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes The address of a c:label.
CLASS c:throw
API Representation
C++cs::ast_class::NC_THROWEXPR
Pythoncs.ast_class.NC_THROWEXPR
Ccsac_nc_throwexpr
Canonical namec:throw
Superclass c:statement
Children
:1
C++, Python, C 1
c:rvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes A throw expression.
CLASS c:complex-conj
API Representation
C++cs::ast_class::NC_COMPLEX_CONJ_EXPR
Pythoncs.ast_class.NC_COMPLEX_CONJ_EXPR
Ccsac_nc_complex_conj_expr
Canonical namec:complex-conj
Superclass c:arithmetic
Children
:1
C++, Python, C 1
c:rvalue
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Complex conjugation (~cpx)
CLASS c:complex-real-part
API Representation
C++cs::ast_class::NC_COMPLEX_REAL_PART
Pythoncs.ast_class.NC_COMPLEX_REAL_PART
Ccsac_nc_complex_real_part
Canonical namec:complex-real-part
Superclass c:lvalue
Children
:1
C++, Python, C 1
c:rvalue
The real part of the value.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Getting the real part of a complex value (__real cpx).
CLASS c:complex-imag-part
API Representation
C++cs::ast_class::NC_COMPLEX_IMAG_PART
Pythoncs.ast_class.NC_COMPLEX_IMAG_PART
Ccsac_nc_complex_imag_part
Canonical namec:complex-imag-part
Superclass c:lvalue
Children
:1
C++, Python, C 1
c:rvalue
The imaginary part of the value.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes Getting the imaginary part of a complex value (__imag cpx).
CLASS c:asm-generic-entry
API Representation
C++cs::ast_class::NC_ASMGENERICENTRY
Pythoncs.ast_class.NC_ASMGENERICENTRY
Ccsac_nc_asmgenericentry
Canonical namec:asm-generic-entry
Superclass c:asm-entry
Children
:1
C++, Python, C 1
c:ast
The assembly instruction string.
Notes A C/C++ asm definition, such as asm("nop")
CLASS c:asm-gnu-entry
API Representation
C++cs::ast_class::NC_ASMGNUENTRY
Pythoncs.ast_class.NC_ASMGNUENTRY
Ccsac_nc_asmgnuentry
Canonical namec:asm-gnu-entry
Superclass c:asm-entry
Children
:1
C++, Python, C 1
c:ast
The assembly instruction string.
:2
C++, Python, C 2
c:asm-gnu-operands
The output operands for the asm definition.
:3
C++, Python, C 3
c:asm-gnu-operands
The input operands for the asm definition.
Notes A C/C++ asm definition using the GNU Extended Asm extension. For example:

asm("inc %0" : "=f"(o) : "a" (i))

CLASS c:asm-gnu-operands
API Representation
C++cs::ast_class::NC_ASMGNUOPERANDS
Pythoncs.ast_class.NC_ASMGNUOPERANDS
Ccsac_nc_asmgnuoperands
Canonical namec:asm-gnu-operands
Superclass c:ast
Children
:1 .. :n
C++, Python, C 1 ..n
NAST
The operands in the list, in order.
Notes A list of operands of a GNU asm statement.
CLASS c:asm-gnu-operand
API Representation
C++cs::ast_class::NC_ASMGNUOPERAND
Pythoncs.ast_class.NC_ASMGNUOPERAND
Ccsac_nc_asmgnuoperand
Canonical namec:asm-gnu-operand
Superclass c:ast
Children
:1
C++, Python, C 1
c:ast
The operand.
:gnu-mod-constr
C++ cs::ast_ordinal::NC_GNU_MOD_CONSTR
Python cs.ast_ordinal.NC_GNU_MOD_CONSTR
C csao_nc_gnu_mod_constr
STRING
The modifier and constraint string.
Notes A single item in a list of operands of a GNU asm statement.
CLASS c:call
API Representation
C++cs::ast_class::NC_SUBPROGCALL
Pythoncs.ast_class.NC_SUBPROGCALL
Ccsac_nc_subprogcall
Canonical namec:call
Superclass c:rvalue
Children
:1
C++, Python, C 1
c:ast
The operand of the expression.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes An indirect function call where the sole child is the function pointer being called.
CLASS c:instanceof
API Representation
C++cs::ast_class::NC_INSTANCEOF
Pythoncs.ast_class.NC_INSTANCEOF
Ccsac_nc_instanceof
Canonical namec:instanceof
Superclass c:rvalue
Children
:1
C++, Python, C 1
c:rvalue
The object to check.
:2
C++, Python, C 2
c:type
The type to check against.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes An operation generated from normalization of dynamic_cast, to check whether an object is a subclass of the given type.
CLASS c:csm-field-exists
API Representation
C++cs::ast_class::NC_CSM_FIELD_EXISTS
Pythoncs.ast_class.NC_CSM_FIELD_EXISTS
Ccsac_nc_csm_field_exists
Canonical namec:csm-field-exists
Superclass c:rvalue
Children
:1
C++, Python, C 1
c:dot
The operand.
:2
C++, Python, C 2
c:dot
1. Use this when the field exists.
:3
C++, Python, C 3
c:dot
0. Use this when the field does not.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes An operation generated from csm_field_exists, used in writing library models. This should not show up in the NAST user sees. Since the NAST they see should have the whole subtree replaced by either 1 or 0 depending on whether the field exists in the type we get from user's system headers.
CLASS c:string
API Representation
C++cs::ast_class::NC_STRING
Pythoncs.ast_class.NC_STRING
Ccsac_nc_string
Canonical namec:string
Superclass c:lvalue
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
BYTES
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:character-kind
C++ cs::ast_ordinal::NC_CHARACTER_KIND
Python cs.ast_ordinal.NC_CHARACTER_KIND
C csao_nc_character_kind
character_kind
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:string
:abs-loc
C++ cs::ast_ordinal::NC_ABS_LOC
Python cs.ast_ordinal.NC_ABS_LOC
C csao_nc_abs_loc
ABS_LOC
The ABS_LOC corresponding to this string.
Notes String literal.
CLASS c:integer-value-32
API Representation
C++cs::ast_class::NC_INTEGER_VALUE_32
Pythoncs.ast_class.NC_INTEGER_VALUE_32
Ccsac_nc_integer_value_32
Canonical namec:integer-value-32
Superclass c:integer-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
INT32
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:character-kind
C++ cs::ast_ordinal::NC_CHARACTER_KIND
Python cs.ast_ordinal.NC_CHARACTER_KIND
C csao_nc_character_kind
character_kind
:is-decimal-literal
C++ cs::ast_ordinal::NC_IS_DECIMAL_LITERAL
Python cs.ast_ordinal.NC_IS_DECIMAL_LITERAL
C csao_nc_is_decimal_literal
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:integer-value
Notes Signed 32-bit integer.
CLASS c:uinteger-value-32
API Representation
C++cs::ast_class::NC_UINTEGER_VALUE_32
Pythoncs.ast_class.NC_UINTEGER_VALUE_32
Ccsac_nc_uinteger_value_32
Canonical namec:uinteger-value-32
Superclass c:integer-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
UINT32
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:character-kind
C++ cs::ast_ordinal::NC_CHARACTER_KIND
Python cs.ast_ordinal.NC_CHARACTER_KIND
C csao_nc_character_kind
character_kind
:is-decimal-literal
C++ cs::ast_ordinal::NC_IS_DECIMAL_LITERAL
Python cs.ast_ordinal.NC_IS_DECIMAL_LITERAL
C csao_nc_is_decimal_literal
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:integer-value
Notes Unsigned 32-bit integer.
CLASS c:integer-value-64
API Representation
C++cs::ast_class::NC_INTEGER_VALUE_64
Pythoncs.ast_class.NC_INTEGER_VALUE_64
Ccsac_nc_integer_value_64
Canonical namec:integer-value-64
Superclass c:integer-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
INT64
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:character-kind
C++ cs::ast_ordinal::NC_CHARACTER_KIND
Python cs.ast_ordinal.NC_CHARACTER_KIND
C csao_nc_character_kind
character_kind
:is-decimal-literal
C++ cs::ast_ordinal::NC_IS_DECIMAL_LITERAL
Python cs.ast_ordinal.NC_IS_DECIMAL_LITERAL
C csao_nc_is_decimal_literal
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:integer-value
Notes Signed 64-bit integer.
CLASS c:uinteger-value-64
API Representation
C++cs::ast_class::NC_UINTEGER_VALUE_64
Pythoncs.ast_class.NC_UINTEGER_VALUE_64
Ccsac_nc_uinteger_value_64
Canonical namec:uinteger-value-64
Superclass c:integer-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
UINT64
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:character-kind
C++ cs::ast_ordinal::NC_CHARACTER_KIND
Python cs.ast_ordinal.NC_CHARACTER_KIND
C csao_nc_character_kind
character_kind
:is-decimal-literal
C++ cs::ast_ordinal::NC_IS_DECIMAL_LITERAL
Python cs.ast_ordinal.NC_IS_DECIMAL_LITERAL
C csao_nc_is_decimal_literal
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:integer-value
Notes Unsigned 64-bit integer.
CLASS c:integer-value-128
API Representation
C++cs::ast_class::NC_INTEGER_VALUE_128
Pythoncs.ast_class.NC_INTEGER_VALUE_128
Ccsac_nc_integer_value_128
Canonical namec:integer-value-128
Superclass c:integer-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
INT128
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:character-kind
C++ cs::ast_ordinal::NC_CHARACTER_KIND
Python cs.ast_ordinal.NC_CHARACTER_KIND
C csao_nc_character_kind
character_kind
:is-decimal-literal
C++ cs::ast_ordinal::NC_IS_DECIMAL_LITERAL
Python cs.ast_ordinal.NC_IS_DECIMAL_LITERAL
C csao_nc_is_decimal_literal
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:integer-value
Notes Signed 128-bit integer.
CLASS c:uinteger-value-128
API Representation
C++cs::ast_class::NC_UINTEGER_VALUE_128
Pythoncs.ast_class.NC_UINTEGER_VALUE_128
Ccsac_nc_uinteger_value_128
Canonical namec:uinteger-value-128
Superclass c:integer-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
UINT128
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:character-kind
C++ cs::ast_ordinal::NC_CHARACTER_KIND
Python cs.ast_ordinal.NC_CHARACTER_KIND
C csao_nc_character_kind
character_kind
:is-decimal-literal
C++ cs::ast_ordinal::NC_IS_DECIMAL_LITERAL
Python cs.ast_ordinal.NC_IS_DECIMAL_LITERAL
C csao_nc_is_decimal_literal
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:integer-value
Notes Unsigned 128-bit integer.
CLASS c:float-value-32
API Representation
C++cs::ast_class::NC_FLOAT_VALUE_32
Pythoncs.ast_class.NC_FLOAT_VALUE_32
Ccsac_nc_float_value_32
Canonical namec:float-value-32
Superclass c:float-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
FLT32
:literal-raw-text
C++ cs::ast_ordinal::NC_LITERAL_RAW_TEXT
Python cs.ast_ordinal.NC_LITERAL_RAW_TEXT
C csao_nc_literal_raw_text
STRING
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:float-value
Notes 32-bit floating-point number.
CLASS c:float-value-64
API Representation
C++cs::ast_class::NC_FLOAT_VALUE_64
Pythoncs.ast_class.NC_FLOAT_VALUE_64
Ccsac_nc_float_value_64
Canonical namec:float-value-64
Superclass c:float-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
FLT64
:literal-raw-text
C++ cs::ast_ordinal::NC_LITERAL_RAW_TEXT
Python cs.ast_ordinal.NC_LITERAL_RAW_TEXT
C csao_nc_literal_raw_text
STRING
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:float-value
Notes 64-bit floating-point number.
CLASS c:float-value-96
API Representation
C++cs::ast_class::NC_FLOAT_VALUE_96
Pythoncs.ast_class.NC_FLOAT_VALUE_96
Ccsac_nc_float_value_96
Canonical namec:float-value-96
Superclass c:float-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
FLT96
:literal-raw-text
C++ cs::ast_ordinal::NC_LITERAL_RAW_TEXT
Python cs.ast_ordinal.NC_LITERAL_RAW_TEXT
C csao_nc_literal_raw_text
STRING
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:float-value
Notes 96-bit floating-point number.
CLASS c:float-value-128
API Representation
C++cs::ast_class::NC_FLOAT_VALUE_128
Pythoncs.ast_class.NC_FLOAT_VALUE_128
Ccsac_nc_float_value_128
Canonical namec:float-value-128
Superclass c:float-value
Children
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
FLT128
:literal-raw-text
C++ cs::ast_ordinal::NC_LITERAL_RAW_TEXT
Python cs.ast_ordinal.NC_LITERAL_RAW_TEXT
C csao_nc_literal_raw_text
STRING
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:float-value
Notes 128-bit floating-point number.
CLASS c:complex-value
API Representation
C++cs::ast_class::NC_COMPLEX_VALUE
Pythoncs.ast_class.NC_COMPLEX_VALUE
Ccsac_nc_complex_value
Canonical namec:complex-value
Superclass c:literal
Children
:real-value
C++ cs::ast_ordinal::NC_REAL_VALUE
Python cs.ast_ordinal.NC_REAL_VALUE
C csao_nc_real_value
c:rvalue
The real part of the number, as a double. This loses precision for long double literals.
:imaginary-value
C++ cs::ast_ordinal::NC_IMAGINARY_VALUE
Python cs.ast_ordinal.NC_IMAGINARY_VALUE
C csao_nc_imaginary_value
c:rvalue
The imaginary part of the number, as a double. This loses precision for long double literals.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes A complex number (1+2i).
CLASS c:variable
API Representation
C++cs::ast_class::NC_VARIABLE
Pythoncs.ast_class.NC_VARIABLE
Ccsac_nc_variable
Canonical namec:variable
Superclass c:lvalue
Children
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
The variable name.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:storage-class
C++ cs::ast_ordinal::NC_STORAGE_CLASS
Python cs.ast_ordinal.NC_STORAGE_CLASS
C csao_nc_storage_class
storage_class
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:variable
:abs-loc
C++ cs::ast_ordinal::NC_ABS_LOC
Python cs.ast_ordinal.NC_ABS_LOC
C csao_nc_abs_loc
ABS_LOC
The ABS_LOC corresponding to this variable.
Notes A variable.
CLASS c:routine
API Representation
C++cs::ast_class::NC_ROUTINE
Pythoncs.ast_class.NC_ROUTINE
Ccsac_nc_routine
Canonical namec:routine
Superclass c:lvalue
Children
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
The name.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:storage-class
C++ cs::ast_ordinal::NC_STORAGE_CLASS
Python cs.ast_ordinal.NC_STORAGE_CLASS
C csao_nc_storage_class
storage_class
:special-function-kind
C++ cs::ast_ordinal::NC_SPECIAL_FUNCTION_KIND
Python cs.ast_ordinal.NC_SPECIAL_FUNCTION_KIND
C csao_nc_special_function_kind
special_function_kind
:operator-name-kind
C++ cs::ast_ordinal::NC_OPERATOR_NAME_KIND
Python cs.ast_ordinal.NC_OPERATOR_NAME_KIND
C csao_nc_operator_name_kind
opname_kind_cpp
:is-member
C++ cs::ast_ordinal::NC_IS_MEMBER
Python cs.ast_ordinal.NC_IS_MEMBER
C csao_nc_is_member
BOOLEAN
:is-virtual
C++ cs::ast_ordinal::NC_IS_VIRTUAL
Python cs.ast_ordinal.NC_IS_VIRTUAL
C csao_nc_is_virtual
BOOLEAN
:is-final
C++ cs::ast_ordinal::NC_IS_FINAL
Python cs.ast_ordinal.NC_IS_FINAL
C csao_nc_is_final
BOOLEAN
:noreturn
C++ cs::ast_ordinal::NC_NORETURN
Python cs.ast_ordinal.NC_NORETURN
C csao_nc_noreturn
BOOLEAN
:attributes
C++ cs::ast_ordinal::NC_ATTRIBUTES
Python cs.ast_ordinal.NC_ATTRIBUTES
C csao_nc_attributes
c:ast-list
:virtual-overrides
C++ cs::ast_ordinal::NC_VIRTUAL_OVERRIDES
Python cs.ast_ordinal.NC_VIRTUAL_OVERRIDES
C csao_nc_virtual_overrides
c:ast-list
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:routine
:abs-loc
C++ cs::ast_ordinal::NC_ABS_LOC
Python cs.ast_ordinal.NC_ABS_LOC
C csao_nc_abs_loc
ABS_LOC
The ABS_LOC corresponding to this routine.
Notes A subprogram.
CLASS c:label
API Representation
C++cs::ast_class::NC_LABEL
Pythoncs.ast_class.NC_LABEL
Ccsac_nc_label
Canonical namec:label
Superclass c:lvalue
Children
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
The label identifier.
Attributes
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:label
Notes A label statement.
CLASS c:field
API Representation
C++cs::ast_class::NC_FIELD
Pythoncs.ast_class.NC_FIELD
Ccsac_nc_field
Canonical namec:field
Superclass c:field-or-base-class
Children
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:offset
C++ cs::ast_ordinal::NC_OFFSET
Python cs.ast_ordinal.NC_OFFSET
C csao_nc_offset
UINT32
:is-bit-field
C++ cs::ast_ordinal::NC_IS_BIT_FIELD
Python cs.ast_ordinal.NC_IS_BIT_FIELD
C csao_nc_is_bit_field
BOOLEAN
:bit-offset
C++ cs::ast_ordinal::NC_BIT_OFFSET
Python cs.ast_ordinal.NC_BIT_OFFSET
C csao_nc_bit_offset
UINT32
:bit-size
C++ cs::ast_ordinal::NC_BIT_SIZE
Python cs.ast_ordinal.NC_BIT_SIZE
C csao_nc_bit_size
UINT32
:is-last-field
C++ cs::ast_ordinal::NC_IS_LAST_FIELD
Python cs.ast_ordinal.NC_IS_LAST_FIELD
C csao_nc_is_last_field
BOOLEAN
Set to true for the last field in the layout of a struct or class, and for all fields of unions.
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:field
Notes A field of a class, struct or union type.
CLASS c:base-class
API Representation
C++cs::ast_class::NC_BASE_CLASS
Pythoncs.ast_class.NC_BASE_CLASS
Ccsac_nc_base_class
Canonical namec:base-class
Superclass c:field-or-base-class
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:offset
C++ cs::ast_ordinal::NC_OFFSET
Python cs.ast_ordinal.NC_OFFSET
C csao_nc_offset
UINT32
:is-virtual
C++ cs::ast_ordinal::NC_IS_VIRTUAL
Python cs.ast_ordinal.NC_IS_VIRTUAL
C csao_nc_is_virtual
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:base-class
Notes (C++ only) base class for a class or struct.
CLASS c:integer
API Representation
C++cs::ast_class::NC_INTEGER
Pythoncs.ast_class.NC_INTEGER
Ccsac_nc_integer
Canonical namec:integer
Superclass c:type
Subclasses
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:integer-kind
C++ cs::ast_ordinal::NC_INTEGER_KIND
Python cs.ast_ordinal.NC_INTEGER_KIND
C csao_nc_integer_kind
int_kind
Notes Integer.
CLASS c:enum
API Representation
C++cs::ast_class::NC_ENUM
Pythoncs.ast_class.NC_ENUM
Ccsac_nc_enum
Canonical namec:enum
Superclass c:integer
Children
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
The name of the enum type.
:values
C++ cs::ast_ordinal::NC_VALUES
Python cs.ast_ordinal.NC_VALUES
C csao_nc_values
c:ast-list
List of values (c:integer-value) of this enum, represented as a list of (c:range).
Attributes
:type-is-fixed
C++ cs::ast_ordinal::NC_TYPE_IS_FIXED
Python cs.ast_ordinal.NC_TYPE_IS_FIXED
C csao_nc_type_is_fixed
BOOLEAN
Whether the type of the enum is pre-determined, like scoped-enum or when with Microsoft cl compiler, or determined from its values.
Notes Enum.
CLASS c:builtin-type
API Representation
C++cs::ast_class::NC_BUILTIN_TYPE
Pythoncs.ast_class.NC_BUILTIN_TYPE
Ccsac_nc_builtin_type
Canonical namec:builtin-type
Superclass c:type
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
true if the type is used with const, provided that the const qualifier was not used to define the type itself.

false if the type is not used with const, or if the const qualifier was used to define the type.

:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
true if the type is used with volatile, provided that the volatile qualifier was not used to define the type itself.

false if the type is not used with volatile, or if the volatile qualifier was used to define the type.

:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
true if the type is used with near, provided that the near qualifier was not used to define the type itself.

false if the type is not used with near, or if the near qualifier was used to define the type. This includes the case where near is not a keyword in the current dialect.

:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
true if the type is used with far, provided that the far qualifier was not used to define the type itself.

false if the type is not used with far, or if the far qualifier was used to define the type. This includes the case where far is not a keyword in the current dialect.

:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
true if the type is used with unaligned, provided that the unaligned qualifier was not used to define the type itself.

false if the type is not used with unaligned, or if the unaligned qualifier was used to define the type. This includes the case where unaligned is not a keyword in the current dialect.

:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
true if the type is used with restrict, provided that the restrict qualifier was not used to define the type itself.

false if the type is not used with restrict, or if the restrict qualifier was used to define the type. This includes the case where restrict is not a keyword in the current dialect.

:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
true if the type is used with the C11 _Atomic, qualifier.
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
The name of the builtint type, e.g. __builtin_va_list
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
Notes A compiler builtin type.
CLASS c:csm-type
API Representation
C++cs::ast_class::NC_CSM_TYPE
Pythoncs.ast_class.NC_CSM_TYPE
Ccsac_nc_csm_type
Canonical namec:csm-type
Superclass c:type
Attributes
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
The name of the type.
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
The underlying type.
:is-primitive
C++ cs::ast_ordinal::NC_IS_PRIMITIVE
Python cs.ast_ordinal.NC_IS_PRIMITIVE
C csao_nc_is_primitive
BOOLEAN
Notes A type Library Model references and should be replaced with real user types when the project is being analyzed. So users shouldn't see this type in their projects.
CLASS c:csm-type-qualifiers
API Representation
C++cs::ast_class::NC_CSM_TYPE_QUALIFIERS
Pythoncs.ast_class.NC_CSM_TYPE_QUALIFIERS
Ccsac_nc_csm_type_qualifiers
Canonical namec:csm-type-qualifiers
Superclass c:type
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
The csm-type it qualifies
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
true if the type is used with const, provided that the const qualifier was not used to define the type itself.

false if the type is not used with const, or if the const qualifier was used to define the type.

:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
true if the type is used with volatile, provided that the volatile qualifier was not used to define the type itself.

false if the type is not used with volatile, or if the volatile qualifier was used to define the type.

:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
true if the type is used with near, provided that the near qualifier was not used to define the type itself.

false if the type is not used with near, or if the near qualifier was used to define the type. This includes the case where near is not a keyword in the current dialect.

:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
true if the type is used with far, provided that the far qualifier was not used to define the type itself.

false if the type is not used with far, or if the far qualifier was used to define the type. This includes the case where far is not a keyword in the current dialect.

:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
true if the type is used with unaligned, provided that the unaligned qualifier was not used to define the type itself.

false if the type is not used with unaligned, or if the unaligned qualifier was used to define the type. This includes the case where unaligned is not a keyword in the current dialect.

:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
true if the type is used with restrict, provided that the restrict qualifier was not used to define the type itself.

false if the type is not used with restrict, or if the restrict qualifier was used to define the type. This includes the case where restrict is not a keyword in the current dialect.

:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
true if the type is used with the C11 _Atomic, qualifier.
Notes Sits on top of a csac_nc_csm_type or a primitive type. Does not show up in user-visible AST.
CLASS c:codesurfer-type
API Representation
C++cs::ast_class::NC_CODESURFER_TYPE
Pythoncs.ast_class.NC_CODESURFER_TYPE
Ccsac_nc_codesurfer_type
Canonical namec:codesurfer-type
Superclass c:type
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
Notes Reserved for internal use.
CLASS c:float
API Representation
C++cs::ast_class::NC_FLOAT
Pythoncs.ast_class.NC_FLOAT
Ccsac_nc_float
Canonical namec:float
Superclass c:abstract-float
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
true if the type is used with const, false otherwise.
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
true if the type is used with volatile, false otherwise.
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
true if the type is used with near, false otherwise.
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
true if the type is used with far, false otherwise.
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
true if the type is used with unaligned, false otherwise.
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
true if the type is used with restrict, false otherwise.
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
true if the type is used with the C11 _Atomic, qualifier.
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:float-kind
C++ cs::ast_ordinal::NC_FLOAT_KIND
Python cs.ast_ordinal.NC_FLOAT_KIND
C csao_nc_float_kind
flt_kind
Notes Real floating point type.
CLASS c:fixed-point
API Representation
C++cs::ast_class::NC_FIXED_POINT
Pythoncs.ast_class.NC_FIXED_POINT
Ccsac_nc_fixed_point
Canonical namec:fixed-point
Superclass c:type
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:fixed-point-kind
C++ cs::ast_ordinal::NC_FIXED_POINT_KIND
Python cs.ast_ordinal.NC_FIXED_POINT_KIND
C csao_nc_fixed_point_kind
fxpt_kind
Notes Fixed-point number.

See class documentation for c:float for notes on attributes.

CLASS c:complex
API Representation
C++cs::ast_class::NC_COMPLEX
Pythoncs.ast_class.NC_COMPLEX
Ccsac_nc_complex
Canonical namec:complex
Superclass c:type
Children
:element-type
C++ cs::ast_ordinal::NC_ELEMENT_TYPE
Python cs.ast_ordinal.NC_ELEMENT_TYPE
C csao_nc_element_type
c:float
The underlying floating point type of the real and imaginary components.
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:float-kind
C++ cs::ast_ordinal::NC_FLOAT_KIND
Python cs.ast_ordinal.NC_FLOAT_KIND
C csao_nc_float_kind
flt_kind
Notes Complex.

See class documentation for c:float for notes on attributes.

CLASS c:imaginary
API Representation
C++cs::ast_class::NC_IMAGINARY
Pythoncs.ast_class.NC_IMAGINARY
Ccsac_nc_imaginary
Canonical namec:imaginary
Superclass c:abstract-float
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
true if the type is used with const, false otherwise.
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
true if the type is used with volatile, false otherwise.
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
true if the type is used with near, false otherwise.
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
true if the type is used with far, false otherwise.
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
true if the type is used with unaligned, false otherwise.
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
true if the type is used with restrict, false otherwise.
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
true if the type is used with the C11 _Atomic, qualifier.
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:float-kind
C++ cs::ast_ordinal::NC_FLOAT_KIND
Python cs.ast_ordinal.NC_FLOAT_KIND
C csao_nc_float_kind
flt_kind
Notes Imaginary floating point type.
CLASS c:void
API Representation
C++cs::ast_class::NC_VOID
Pythoncs.ast_class.NC_VOID
Ccsac_nc_void
Canonical namec:void
Superclass c:type
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
Notes void type.

See class documentation for c:float for notes on attributes.

CLASS c:pointer
API Representation
C++cs::ast_class::NC_POINTER
Pythoncs.ast_class.NC_POINTER
Ccsac_nc_pointer
Canonical namec:pointer
Superclass c:type
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-nullable
C++ cs::ast_ordinal::NC_IS_NULLABLE
Python cs.ast_ordinal.NC_IS_NULLABLE
C csao_nc_is_nullable
BOOLEAN
:is-nonnull
C++ cs::ast_ordinal::NC_IS_NONNULL
Python cs.ast_ordinal.NC_IS_NONNULL
C csao_nc_is_nonnull
BOOLEAN
:is-null-unspecified
C++ cs::ast_ordinal::NC_IS_NULL_UNSPECIFIED
Python cs.ast_ordinal.NC_IS_NULL_UNSPECIFIED
C csao_nc_is_null_unspecified
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:pointed-to
C++ cs::ast_ordinal::NC_POINTED_TO
Python cs.ast_ordinal.NC_POINTED_TO
C csao_nc_pointed_to
c:type
:is-reference
C++ cs::ast_ordinal::NC_IS_REFERENCE
Python cs.ast_ordinal.NC_IS_REFERENCE
C csao_nc_is_reference
BOOLEAN
If true, this type is a C++ reference type.
:is-rvalue-reference
C++ cs::ast_ordinal::NC_IS_RVALUE_REFERENCE
Python cs.ast_ordinal.NC_IS_RVALUE_REFERENCE
C csao_nc_is_rvalue_reference
BOOLEAN
If true, this type is a C++0x rvalue reference type.
Notes Pointer.

See class documentation for c:float for notes on attributes.

CLASS c:routine-type
API Representation
C++cs::ast_class::NC_ROUTINE_TYPE
Pythoncs.ast_class.NC_ROUTINE_TYPE
Ccsac_nc_routine_type
Canonical namec:routine-type
Superclass c:type
Children
:1 .. :n
C++, Python, C 1 ..n
c:type
The types of the arguments to the routine, in order.
:return-type
C++ cs::ast_ordinal::NC_RETURN_TYPE
Python cs.ast_ordinal.NC_RETURN_TYPE
C csao_nc_return_type
c:type
Type of routine's return value.
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-nonstatic-member
C++ cs::ast_ordinal::NC_IS_NONSTATIC_MEMBER
Python cs.ast_ordinal.NC_IS_NONSTATIC_MEMBER
C csao_nc_is_nonstatic_member
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:prototyped
C++ cs::ast_ordinal::NC_PROTOTYPED
Python cs.ast_ordinal.NC_PROTOTYPED
C csao_nc_prototyped
BOOLEAN
:has-ellipsis
C++ cs::ast_ordinal::NC_HAS_ELLIPSIS
Python cs.ast_ordinal.NC_HAS_ELLIPSIS
C csao_nc_has_ellipsis
BOOLEAN
:return-type-defaulted
C++ cs::ast_ordinal::NC_RETURN_TYPE_DEFAULTED
Python cs.ast_ordinal.NC_RETURN_TYPE_DEFAULTED
C csao_nc_return_type_defaulted
BOOLEAN
The return type is unknown.
:value-returned-by-cctor
C++ cs::ast_ordinal::NC_VALUE_RETURNED_BY_CCTOR
Python cs.ast_ordinal.NC_VALUE_RETURNED_BY_CCTOR
C csao_nc_value_returned_by_cctor
BOOLEAN
true if the caller provides a place for the return value (by passing its address as a parameter), and the called routine must place its result in that location.
Notes routine type

See class documentation for c:float for notes on attributes.

CLASS c:array
API Representation
C++cs::ast_class::NC_ARRAY
Pythoncs.ast_class.NC_ARRAY
Ccsac_nc_array
Canonical namec:array
Superclass c:type
Children
:element-type
C++ cs::ast_ordinal::NC_ELEMENT_TYPE
Python cs.ast_ordinal.NC_ELEMENT_TYPE
C csao_nc_element_type
c:type
:num-elements
C++ cs::ast_ordinal::NC_NUM_ELEMENTS
Python cs.ast_ordinal.NC_NUM_ELEMENTS
C csao_nc_num_elements
UINT32
Attributes
:num-elements-aloc
C++ cs::ast_ordinal::NC_NUM_ELEMENTS_ALOC
Python cs.ast_ordinal.NC_NUM_ELEMENTS_ALOC
C csao_nc_num_elements_aloc
ABS_LOC
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:is-vla
C++ cs::ast_ordinal::NC_IS_VLA
Python cs.ast_ordinal.NC_IS_VLA
C csao_nc_is_vla
BOOLEAN
Is this a variable-length array?
:size-is-incomplete
C++ cs::ast_ordinal::NC_SIZE_IS_INCOMPLETE
Python cs.ast_ordinal.NC_SIZE_IS_INCOMPLETE
C csao_nc_size_is_incomplete
BOOLEAN
Notes Array.

See class documentation for c:float for more notes on attributes.

CLASS c:class
API Representation
C++cs::ast_class::NC_CLASS
Pythoncs.ast_class.NC_CLASS
Ccsac_nc_class
Canonical namec:class
Superclass c:class-struct-union
Children
:1 .. :n
C++, Python, C 1 ..n
c:field-or-base-class
The base classes and fields of the class.
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
:size-is-incomplete
C++ cs::ast_ordinal::NC_SIZE_IS_INCOMPLETE
Python cs.ast_ordinal.NC_SIZE_IS_INCOMPLETE
C csao_nc_size_is_incomplete
BOOLEAN
:is-final
C++ cs::ast_ordinal::NC_IS_FINAL
Python cs.ast_ordinal.NC_IS_FINAL
C csao_nc_is_final
BOOLEAN
:any-virtual-functions-including-in-base-classes
C++ cs::ast_ordinal::NC_ANY_VIRTUAL_FUNCTIONS_INCLUDING_IN_BASE_CLASSES
Python cs.ast_ordinal.NC_ANY_VIRTUAL_FUNCTIONS_INCLUDING_IN_BASE_CLASSES
C csao_nc_any_virtual_functions_including_in_base_classes
BOOLEAN
Notes class type.

See class documentation for c:float for more notes on attributes.

CLASS c:struct
API Representation
C++cs::ast_class::NC_STRUCT
Pythoncs.ast_class.NC_STRUCT
Ccsac_nc_struct
Canonical namec:struct
Superclass c:class-struct-union
Children
:1 .. :n
C++, Python, C 1 ..n
c:field-or-base-class
The base classes and fields of the struct.
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
:size-is-incomplete
C++ cs::ast_ordinal::NC_SIZE_IS_INCOMPLETE
Python cs.ast_ordinal.NC_SIZE_IS_INCOMPLETE
C csao_nc_size_is_incomplete
BOOLEAN
:is-final
C++ cs::ast_ordinal::NC_IS_FINAL
Python cs.ast_ordinal.NC_IS_FINAL
C csao_nc_is_final
BOOLEAN
:any-virtual-functions-including-in-base-classes
C++ cs::ast_ordinal::NC_ANY_VIRTUAL_FUNCTIONS_INCLUDING_IN_BASE_CLASSES
Python cs.ast_ordinal.NC_ANY_VIRTUAL_FUNCTIONS_INCLUDING_IN_BASE_CLASSES
C csao_nc_any_virtual_functions_including_in_base_classes
BOOLEAN
Notes struct type.

See class documentation for c:float for notes on attributes.

CLASS c:union
API Representation
C++cs::ast_class::NC_UNION
Pythoncs.ast_class.NC_UNION
Ccsac_nc_union
Canonical namec:union
Superclass c:class-struct-union
Children
:1 .. :n
C++, Python, C 1 ..n
c:field
The fields of the union.
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
:size-is-incomplete
C++ cs::ast_ordinal::NC_SIZE_IS_INCOMPLETE
Python cs.ast_ordinal.NC_SIZE_IS_INCOMPLETE
C csao_nc_size_is_incomplete
BOOLEAN
:is-final
C++ cs::ast_ordinal::NC_IS_FINAL
Python cs.ast_ordinal.NC_IS_FINAL
C csao_nc_is_final
BOOLEAN
:any-virtual-functions-including-in-base-classes
C++ cs::ast_ordinal::NC_ANY_VIRTUAL_FUNCTIONS_INCLUDING_IN_BASE_CLASSES
Python cs.ast_ordinal.NC_ANY_VIRTUAL_FUNCTIONS_INCLUDING_IN_BASE_CLASSES
C csao_nc_any_virtual_functions_including_in_base_classes
BOOLEAN
Notes union type.

See class documentation for c:float for notes on attributes.

CLASS c:ptr-to-member
API Representation
C++cs::ast_class::NC_PTR_TO_MEMBER
Pythoncs.ast_class.NC_PTR_TO_MEMBER
Ccsac_nc_ptr_to_member
Canonical namec:ptr-to-member
Superclass c:type
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
:class-type
C++ cs::ast_ordinal::NC_CLASS_TYPE
Python cs.ast_ordinal.NC_CLASS_TYPE
C csao_nc_class_type
c:type
:pointed-to
C++ cs::ast_ordinal::NC_POINTED_TO
Python cs.ast_ordinal.NC_POINTED_TO
C csao_nc_pointed_to
c:type
Notes The type of an entity that can point (only) to fields of a specified entity.

See class documentation for c:float for notes on attributes.

CLASS c:template-param
API Representation
C++cs::ast_class::NC_TEMPLATE_PARAM
Pythoncs.ast_class.NC_TEMPLATE_PARAM
Ccsac_nc_template_param
Canonical namec:template-param
Superclass c:type
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
Notes Template parameter in a (class or function) declaration.

See class documentation for c:float for notes on attributes.

CLASS c:vector-type
API Representation
C++cs::ast_class::NC_VECTOR_TYPE
Pythoncs.ast_class.NC_VECTOR_TYPE
Ccsac_nc_vector_type
Canonical namec:vector-type
Superclass c:type
Children
:element-type
C++ cs::ast_ordinal::NC_ELEMENT_TYPE
Python cs.ast_ordinal.NC_ELEMENT_TYPE
C csao_nc_element_type
c:type
Attributes
:size
C++ cs::ast_ordinal::NC_SIZE
Python cs.ast_ordinal.NC_SIZE
C csao_nc_size
UINT32
:alignment
C++ cs::ast_ordinal::NC_ALIGNMENT
Python cs.ast_ordinal.NC_ALIGNMENT
C csao_nc_alignment
UINT32
:is-const
C++ cs::ast_ordinal::NC_IS_CONST
Python cs.ast_ordinal.NC_IS_CONST
C csao_nc_is_const
BOOLEAN
:is-volatile
C++ cs::ast_ordinal::NC_IS_VOLATILE
Python cs.ast_ordinal.NC_IS_VOLATILE
C csao_nc_is_volatile
BOOLEAN
:is-near
C++ cs::ast_ordinal::NC_IS_NEAR
Python cs.ast_ordinal.NC_IS_NEAR
C csao_nc_is_near
BOOLEAN
:is-far
C++ cs::ast_ordinal::NC_IS_FAR
Python cs.ast_ordinal.NC_IS_FAR
C csao_nc_is_far
BOOLEAN
:is-unaligned
C++ cs::ast_ordinal::NC_IS_UNALIGNED
Python cs.ast_ordinal.NC_IS_UNALIGNED
C csao_nc_is_unaligned
BOOLEAN
:is-restrict
C++ cs::ast_ordinal::NC_IS_RESTRICT
Python cs.ast_ordinal.NC_IS_RESTRICT
C csao_nc_is_restrict
BOOLEAN
:is-c11-atomic
C++ cs::ast_ordinal::NC_IS_C11_ATOMIC
Python cs.ast_ordinal.NC_IS_C11_ATOMIC
C csao_nc_is_c11_atomic
BOOLEAN
:is-complete
C++ cs::ast_ordinal::NC_IS_COMPLETE
Python cs.ast_ordinal.NC_IS_COMPLETE
C csao_nc_is_complete
BOOLEAN
:unnormalized
C++ cs::ast_ordinal::NC_UNNORMALIZED
Python cs.ast_ordinal.NC_UNNORMALIZED
C csao_nc_unnormalized
cc:ast
Notes GNU extension vector type typedef int v4si __attribute__ ((vector_size (16)))

See class documentation for c:float for notes on attributes.

CLASS c:base-class-access
API Representation
C++cs::ast_class::NC_BASE_CLASS_ACCESS
Pythoncs.ast_class.NC_BASE_CLASS_ACCESS
Ccsac_nc_base_class_access
Canonical namec:base-class-access
Superclass c:class-access
Children
:1
C++, Python, C 1
c:lvalue
The derived class object.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
The type of the base class.
:compiler-generated
C++ cs::ast_ordinal::NC_COMPILER_GENERATED
Python cs.ast_ordinal.NC_COMPILER_GENERATED
C csao_nc_compiler_generated
BOOLEAN
:offset
C++ cs::ast_ordinal::NC_OFFSET
Python cs.ast_ordinal.NC_OFFSET
C csao_nc_offset
INT32
The offset of the base class within the derived class.
Notes Access a direct base class.
CLASS c:derived-class-access
API Representation
C++cs::ast_class::NC_DERIVED_CLASS_ACCESS
Pythoncs.ast_class.NC_DERIVED_CLASS_ACCESS
Ccsac_nc_derived_class_access
Canonical namec:derived-class-access
Superclass c:class-access
Children
:1
C++, Python, C 1
c:lvalue
The base class object.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
The type of the derived class.
:compiler-generated
C++ cs::ast_ordinal::NC_COMPILER_GENERATED
Python cs.ast_ordinal.NC_COMPILER_GENERATED
C csao_nc_compiler_generated
BOOLEAN
:offset
C++ cs::ast_ordinal::NC_OFFSET
Python cs.ast_ordinal.NC_OFFSET
C csao_nc_offset
INT32
The offset of the derived class relative to the base class. Nonpositive.
Notes Access a direct derived class.
CLASS c:virtual-base-class-access
API Representation
C++cs::ast_class::NC_VIRTUAL_BASE_CLASS_ACCESS
Pythoncs.ast_class.NC_VIRTUAL_BASE_CLASS_ACCESS
Ccsac_nc_virtual_base_class_access
Canonical namec:virtual-base-class-access
Superclass c:class-access
Children
:1
C++, Python, C 1
c:lvalue
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:compiler-generated
C++ cs::ast_ordinal::NC_COMPILER_GENERATED
Python cs.ast_ordinal.NC_COMPILER_GENERATED
C csao_nc_compiler_generated
BOOLEAN
Notes Access a virtual base class.
CLASS c:virtual-derived-class-access
API Representation
C++cs::ast_class::NC_VIRTUAL_DERIVED_CLASS_ACCESS
Pythoncs.ast_class.NC_VIRTUAL_DERIVED_CLASS_ACCESS
Ccsac_nc_virtual_derived_class_access
Canonical namec:virtual-derived-class-access
Superclass c:class-access
Children
:1
C++, Python, C 1
c:lvalue
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:compiler-generated
C++ cs::ast_ordinal::NC_COMPILER_GENERATED
Python cs.ast_ordinal.NC_COMPILER_GENERATED
C csao_nc_compiler_generated
BOOLEAN
Notes Access a virtual derived class.
CLASS c:designator-init
API Representation
C++cs::ast_class::NC_DESIGNATOR_INIT
Pythoncs.ast_class.NC_DESIGNATOR_INIT
Ccsac_nc_designator_init
Canonical namec:designator-init
Superclass c:ast
Children
:1
C++, Python, C 1
c:field
The field being initialized.
:2
C++, Python, C 2
c:rvalue
The value.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
Notes A designator initialization. Right now only used for union fields.
CLASS c:attribute
API Representation
C++cs::ast_class::NC_ABSTRACT_ATTRIBUTE
Pythoncs.ast_class.NC_ABSTRACT_ATTRIBUTE
Ccsac_nc_abstract_attribute
Canonical namec:attribute
Superclass c:ast
Subclasses
Notes Abstract base class for attributes.
CLASS c:format-attribute
API Representation
C++cs::ast_class::NC_FORMAT_ATTRIBUTE
Pythoncs.ast_class.NC_FORMAT_ATTRIBUTE
Ccsac_nc_format_attribute
Canonical namec:format-attribute
Superclass c:attribute
Attributes
:kind
C++ cs::ast_ordinal::NC_KIND
Python cs.ast_ordinal.NC_KIND
C csao_nc_kind
STRING
Determins how the format string is interpreted.
:string-index
C++ cs::ast_ordinal::NC_STRING_INDEX
Python cs.ast_ordinal.NC_STRING_INDEX
C csao_nc_string_index
UINT32
:first-to-check
C++ cs::ast_ordinal::NC_FIRST_TO_CHECK
Python cs.ast_ordinal.NC_FIRST_TO_CHECK
C csao_nc_first_to_check
UINT32
Notes For the format attribute.
CLASS c:ast-list
API Representation
C++cs::ast_class::NC_AST_LIST
Pythoncs.ast_class.NC_AST_LIST
Ccsac_nc_ast_list
Canonical namec:ast-list
Superclass ast-root
Children
:1 .. :n
C++, Python, C 1 ..n
c:ast
The ASTs in the list, in order.
Notes A list of ASTs (c:ast).
CLASS c:range
API Representation
C++cs::ast_class::NC_RANGE
Pythoncs.ast_class.NC_RANGE
Ccsac_nc_range
Canonical namec:range
Superclass ast-root
Children
:lower
C++ cs::ast_ordinal::NC_LOWER
Python cs.ast_ordinal.NC_LOWER
C csao_nc_lower
c:ast
The lower end of the range, inclusive.
:upper
C++ cs::ast_ordinal::NC_UPPER
Python cs.ast_ordinal.NC_UPPER
C csao_nc_upper
c:ast
The upper end of the range, inclusive.
Notes A range.
CLASS c:builtin-call
API Representation
C++cs::ast_class::NC_BUILTIN_CALL
Pythoncs.ast_class.NC_BUILTIN_CALL
Ccsac_nc_builtin_call
Canonical namec:builtin-call
Superclass c:ast
Children
:1
C++, Python, C 1
c:exprs
The list of parameter expressions to the call.
Attributes
:type
C++ cs::ast_ordinal::NC_TYPE
Python cs.ast_ordinal.NC_TYPE
C csao_nc_type
c:type
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
Notes This class is used to hold the parameters and name of compiler built-in calls, which are otherwise, unprocessed. This is used to implelement vararg call, va_start, va_arg, va_end, and va_copy. Only when these functions are not replaced by models (i.e. --cs_no_csinclude ).
CLASS c:csm-named-value
API Representation
C++cs::ast_class::NC_CSM_NAMED_VALUE
Pythoncs.ast_class.NC_CSM_NAMED_VALUE
Ccsac_nc_csm_named_value
Canonical namec:csm-named-value
Superclass c:rvalue
Attributes
:name
C++ cs::ast_ordinal::NC_NAME
Python cs.ast_ordinal.NC_NAME
C csao_nc_name
STRING
The name.
:value
C++ cs::ast_ordinal::NC_VALUE
Python cs.ast_ordinal.NC_VALUE
C csao_nc_value
c:integer-value
The value.
Notes Used by library models to get values from user code. Does not show up in the final NAST.
CLASS c:unavailable
API Representation
C++cs::ast_class::NC_UNAVAILABLE
Pythoncs.ast_class.NC_UNAVAILABLE
Ccsac_nc_unavailable
Canonical namec:unavailable
Superclass c:ast
Attributes
:location
C++ cs::ast_ordinal::NC_LOCATION
Python cs.ast_ordinal.NC_LOCATION
C csao_nc_location
STRING
Where in source this AST came from
:description
C++ cs::ast_ordinal::NC_DESCRIPTION
Python cs.ast_ordinal.NC_DESCRIPTION
C csao_nc_description
STRING
What's the source like
:kind
C++ cs::ast_ordinal::NC_KIND
Python cs.ast_ordinal.NC_KIND
C csao_nc_kind
UINT32
Used by frontend to decide how to handle an instance of this AST
Notes Represent code fragments frontends aren't generating real IR for yet.

Notes

unavailable When a child or attribute has no meaning for a given tree, it is not included in the tree.

The various API implementations handle unavailable fields as follows.

true The "true" setting of a BOOLEAN.

The various API implementations represent this as follows.

false The "false" setting of a BOOLEAN.

The various API implementations represent this as follows.

Implementation dependent. These constructs do not come directly from source code. Rather, the language implies this construct. Such constructs are usually implementation-dependent.
GNU The field or fields of the class will be unavailable if the front end doesn't support this GNU extension.
 

To report problems with this documentation, please visit https://support.codesecure.com/.