public abstract class DataType : CodeNode {
public weak bool transfers_ownership { get; set; } ;
public weak bool takes_ownership { get; set; } ;
public weak bool nullable { get; set; } ;
public weak Typesymbol data_type { get; set; } ;
public TypeParameter type_parameter { get; set; } ;
public weak bool floating_reference { get; set; } ;
public weak bool is_dynamic { get; set; } ;
public DataType ( ) ;
public void add_type_argument ( DataType arg ) ;
public Gee.List< DataType > get_type_arguments ( ) ;
public void remove_all_type_arguments ( ) ;
public virtual string? get_cname ( bool var_type = ÿ%,
bool const_type = ÿ% ) ;
public string get_const_cname ( ) ;
public virtual string? get_lower_case_cname ( string? infix = null ) ;
public abstract DataType copy ( ) ;
public virtual bool equals ( DataType type2 ) ;
public virtual bool stricter ( DataType type2 ) ;
public virtual bool compatible ( DataType target_type ) ;
public virtual bool is_invokable ( ) ;
public virtual DataType? get_return_type ( ) ;
public virtual Gee.Collection< FormalParameter >? get_parameters ( ) ;
public virtual bool is_reference_type_or_type_parameter ( ) ;
public virtual bool is_array ( ) ;
public virtual Gee.Collection< Symbol > get_symbols ( ) ;
public virtual Symbol? get_member ( string member_name ) ;
public virtual Symbol? get_pointer_member ( string member_name ) ;
public virtual bool is_real_struct_type ( ) ;
public virtual string? get_type_id ( ) ;
public string? get_type_signature ( ) ;
}

public DataType ( ) ;
public weak bool transfers_ownership { get; set; } ;
public weak bool takes_ownership { get; set; } ;
public weak bool nullable { get; set; } ;
public weak Typesymbol data_type { get; set; } ;
public TypeParameter type_parameter { get; set; } ;
public weak bool floating_reference { get; set; } ;
public weak bool is_dynamic { get; set; } ;
public void add_type_argument ( DataType arg ) ;
public Gee.List< DataType > get_type_arguments ( ) ;
public void remove_all_type_arguments ( ) ;
public virtual string? get_cname ( bool var_type = ÿ%,
bool const_type = ÿ% ) ;
public string get_const_cname ( ) ;
public virtual string? get_lower_case_cname ( string? infix = null ) ;
public abstract DataType copy ( ) ;
public virtual bool equals ( DataType type2 ) ;
public virtual bool stricter ( DataType type2 ) ;
public virtual bool compatible ( DataType target_type ) ;
public virtual bool is_invokable ( ) ;
public virtual DataType? get_return_type ( ) ;
public virtual Gee.Collection< FormalParameter >? get_parameters ( ) ;
public virtual bool is_reference_type_or_type_parameter ( ) ;
public virtual bool is_array ( ) ;
public virtual Gee.Collection< Symbol > get_symbols ( ) ;
public virtual Symbol? get_member ( string member_name ) ;
public virtual Symbol? get_pointer_member ( string member_name ) ;
public virtual bool is_real_struct_type ( ) ;
public virtual string? get_type_id ( ) ;
public string? get_type_signature ( ) ;
Created by Valadoc