nitc :: AAttrPropdef :: create_setter
modelbuilder
: It's used to link the new mwritepropdef
and self
visibility
: Is the setter has the same visibilty of the mreadpropdef
.
If `not is_same_visibility and mreadpropdef.mproperty.visibility > protected_visibility` the `mwritepropdef` visibility will be set to protected.
# Create a new setter for the attribute.
#
# `modelbuilder`: It's used to link the new `mwritepropdef` and `self`
# `visibility`: Is the setter has the same visibilty of the `mreadpropdef`.
# If `not is_same_visibility and mreadpropdef.mproperty.visibility > protected_visibility` the `mwritepropdef` visibility will be set to protected.
fun create_setter(modelbuilder: ModelBuilder, is_same_visibility: nullable Bool): AAttrPropdef
is
expect(mreadpropdef != null) # Use to define the visibility, the mclassdef and the doc of the `mwritepropdef`
do
if mwritepropdef != null then return self # Self already has a `mwritepropdef`
var same_visibility = false
if is_same_visibility != null then same_visibility = is_same_visibility
self.build_write_property(modelbuilder, mreadpropdef.mclassdef, same_visibility)
self.build_write_signature
return self
end
src/modelize/modelize_property.nit:1517,2--1533,4