Return the most specific definition in the linearization of mtype.

If you want to know the next properties in the linearization, look at MPropDef::lookup_next_definition.

FIXME: the linearization is still unspecified

REQUIRE: not mtype.need_anchor to simplify the API (no anchor parameter)

REQUIRE: mtype.has_mproperty(mmodule, self)

Property definitions

nitc $ MProperty :: lookup_first_definition
	# Return the most specific definition in the linearization of `mtype`.
	#
	# If you want to know the next properties in the linearization,
	# look at `MPropDef::lookup_next_definition`.
	#
	# FIXME: the linearization is still unspecified
	#
	# REQUIRE: `not mtype.need_anchor` to simplify the API (no `anchor` parameter)
	# REQUIRE: `mtype.has_mproperty(mmodule, self)`
	fun lookup_first_definition(mmodule: MModule, mtype: MType): MPROPDEF
	do
		return lookup_all_definitions(mmodule, mtype).first
	end
src/model/model.nit:2342,2--2354,4