}
}
+ public string ctype {
+ get {
+ if (!ctype_set) {
+ if (ccode != null) {
+ _ctype = ccode.get_string ("type");
+ if (_ctype == null) {
+ _ctype = ccode.get_string ("ctype");
+ }
+ }
+ ctype_set = true;
+ }
+ return _ctype;
+ }
+ }
+
public string type_id {
get {
if (_type_id == null) {
if (_finish_name == null) {
if (ccode != null) {
_finish_name = ccode.get_string ("finish_name");
- }
- if (_finish_name == null) {
- _finish_name = ccode.get_string ("finish_function");
+ if (_finish_name == null) {
+ _finish_name = ccode.get_string ("finish_function");
+ }
}
if (_finish_name == null) {
_finish_name = get_finish_name_for_basename (name);
private string _finish_real_name;
private string _real_name;
private string _delegate_target_name;
+ private string _ctype;
+ private bool ctype_set = false;
private static int dynamic_method_id;
}
public static string? get_ccode_type (CodeNode node) {
- return node.get_attribute_string ("CCode", "type");
+ return get_ccode_attribute(node).ctype;
}
public static bool get_ccode_simple_generics (Method m) {