Property definitions

nitc $ AMethPropdef :: defaultinit
# A definition of all kind of method (including constructors)
class AMethPropdef
	super APropdef

	# The `fun` keyword, if any
	var n_kwmeth: nullable TKwmeth = null is writable

	# The `init` keyword, if any
	var n_kwinit: nullable TKwinit = null is writable

	# The `isa` keyword, if any
	var n_kwisa: nullable TKwisa = null is writable

	# The `new` keyword, if any
	var n_kwnew: nullable TKwnew = null is writable

	# The name of the method, if any
	var n_methid: nullable AMethid = null is writable

	# The signature of the method, if any
	var n_signature: nullable ASignature = null is writable

	# The `do` keyword
	var n_kwdo: nullable TKwdo = null is writable

	# The body (in Nit) of the method, if any
	var n_block: nullable AExpr = null is writable

	# The `end` keyword
	var n_kwend: nullable TKwend = null is writable

	# The list of declared callbacks (for extern methods)
	var n_extern_calls: nullable AExternCalls = null is writable

	# The body (in extern code) of the method, if any
	var n_extern_code_block: nullable AExternCodeBlock = null is writable

	redef fun hot_location
	do
		if n_methid != null then
			return n_methid.location
		else if n_kwinit != null then
			return n_kwinit.location
		else if n_kwnew != null then
			return n_kwnew.location
		else
			return location
		end
	end
end
src/parser/parser_nodes.nit:1404,1--1453,3