Detach a node from its parent

Aborts if the node is not detachable. use replace_with instead

REQUIRE: parent != null

REQUIRE: is_detachable

ENDURE: parent == null

Property definitions

nitc $ ANode :: detach
	# Detach a node from its parent
	# Aborts if the node is not detachable. use `replace_with` instead
	# REQUIRE: parent != null
	# REQUIRE: is_detachable
	# ENDURE: parent == null
	fun detach
	do
		assert parent != null
		parent.replace_child(self, null)
		parent = null
	end
src/parser/parser_nodes.nit:118,2--128,4