Inserts c at position pos

var b = new Buffer
b.append "美しい世界"
b.insert_char(' ', 3)
assert b == "美しい 世界"

Property definitions

core $ Buffer :: insert_char
	# Inserts `c` at position `pos`
	#
	# ~~~
	# var b = new Buffer
	# b.append "美しい世界"
	# b.insert_char(' ', 3)
	# assert b == "美しい 世界"
	# ~~~
	fun insert_char(c: Char, pos: Int) is abstract
lib/core/text/abstract_text.nit:1747,2--1755,47

core $ FlatBuffer :: insert_char
	redef fun insert_char(c, pos) do
		assert pos >= 0 and pos <= length
		if pos == length then
			add c
			return
		end
		var clen = c.u8char_len
		enlarge(byte_length + clen)
		var it = _items
		var shpos = it.char_to_byte_index(pos)
		rshift_bytes(shpos, clen)
		it.set_char_at(shpos, c)
		length += 1
		byte_length += clen
	end
lib/core/text/flat.nit:953,2--967,4