Returns the code_point from a utf16 surrogate pair

assert 0xD83DDE02u32.from_utf16_surr == 0x1F602u32

Property definitions

core :: native $ UInt32 :: from_utf16_surr
	# Returns the code_point from a utf16 surrogate pair
	#
	#     assert 0xD83DDE02u32.from_utf16_surr == 0x1F602u32
	fun from_utf16_surr: UInt32 do
		var hi = (self & 0xFFFF0000u32) >> 16
		var lo = self & 0xFFFFu32
		var cp = 0u32
		cp += (hi - 0xD800u32) << 10
		cp += lo - 0xDC00u32
		cp += 0x10000u32
		return cp
	end
lib/core/text/native.nit:72,2--83,4