Try to get an element, return default if the index is invalid.

var a = [10,20,30]
assert a.get_or_default(1, -1) == 20
assert a.get_or_default(3, -1) == -1
assert a.get_or_default(-1, -1) == -1
assert a.get_or_default(-10, -1) == -1

Property definitions

core $ SequenceRead :: get_or_default
	# Try to get an element, return `default` if the `index` is invalid.
	#
	# ~~~
	# var a = [10,20,30]
	# assert a.get_or_default(1, -1) == 20
	# assert a.get_or_default(3, -1) == -1
	# assert a.get_or_default(-1, -1) == -1
	# assert a.get_or_default(-10, -1) == -1
	# ~~~
	fun get_or_default(index: Int, default: E): E
	do
		if index >= 0 and index < length then return self[index]
		return default
	end
lib/core/collection/abstract_collection.nit:917,2--930,4