redef class Nsignature_block_signature
redef fun accept_objc(v)
do
- var method = new ObjcMethod
+ var c = v.objc_class
+ assert c != null
+
+ var method = new ObjcMethod(c)
method.return_type = n_signature_return_type.to_type
- method.scope = if n_scope.is_class_property then '-' else '+'
+ method.is_class_property = n_scope.is_class_property
for n_param in n_parameter.children do
var param = n_param.to_param
method.is_commented = true
# Use a placeholder for easier debugging
- param = new Param
+ param = new ObjcParam
param.name = "UNKNOWN"
param.return_type = "UNKNOWN"
param.variable_name = "UNKNOWN"
method.params.add param
end
- v.objc_class.methods.add method
+ c.methods.add method
end
end
redef class Nproperty_property
redef fun accept_objc(v)
do
- var attr = new ObjcAttribute
+ var c = v.objc_class
+ assert c != null
+
+ var attr = new ObjcAttribute(c)
attr.return_type = n_type.to_type
attr.name = n_left.collect_text
- v.objc_class.attributes.add attr
+ c.attributes.add attr
end
end
redef class Nparameter
# Return null if type is not yet unsupported
- private fun to_param: nullable Param do return null
+ private fun to_param: nullable ObjcParam do return null
end
# Parameters with both a public and an internal name
redef class Nparameter_named
redef fun to_param
do
- var param = new Param
+ var param = new ObjcParam
param.variable_name = n_right.collect_text
param.name = n_left.collect_text
- param.return_type = n_parameter_type.to_type
+
+ var n_type = n_parameter_type_in_par
+ param.return_type = if n_type != null then
+ n_type.n_parameter_type.to_type
+ else "NSObject"
+
return param
end
end
redef class Nparameter_single
redef fun to_param
do
- var param = new Param
+ var param = new ObjcParam
param.name = n_term.collect_text
param.is_single = true
return param