protected override TargetType CreateType()
{
if (!abbrev.HasChildren)
return new NativeTypeAlias (language, Name, Name);
foreach (Die child in Children) {
DieInheritance inheritance = child as DieInheritance;
if ((inheritance == null) || !inheritance.HasDataMember)
continue;
if (!inheritance.Resolve ())
continue;
debug ("INHERITANCE: {0} {1}", inheritance, inheritance.BaseInfo);
base_info = inheritance.BaseInfo;
break;
}
type = new NativeStructType (language, Name, byte_size, base_info);
return type;
}