protocol UnicodeCodecType A Unicode encoding scheme. Consists of an underlying code unit and functions to translate between sequences of these code units and unicode scalar values. Inheritance View Protocol Hierarchy → Associated Types CodeUnit A type that can hold code unit values for this encoding. Import import Swift Initializers init() Required Declaration init() Static Methods static func encode(_:output:) Required Encode a UnicodeScalar as a series of CodeUnits by calling output on each CodeUnit. Declaration static func encode(input: UnicodeScalar, output: (Self.CodeUnit) -> Void) Instance Methods mutating func decode(inout:) Required Start or continue decoding a UTF sequence. In order to decode a code unit sequence completely, this function should be called repeatedly until it returns UnicodeDecodingResult.EmptyInput. Checking that the generator was exhausted is not sufficient. The decoder can have an internal buffer that is pre-filled with data from the input generator. Because of buffering, it is impossible to find the corresponding position in the generator for a given returned UnicodeScalar or an error. next: A generator of code units to be decoded. Declaration mutating func decode<G : GeneratorType where G.Element == CodeUnit>(inout next: G) -> UnicodeDecodingResult