sys-byte2char man page on Inferno

Man page or keyword search:  
man Server   579 pages
apropos Keyword Search (all sections)
Output format
Inferno logo
[printable version]

SYS-BYTE2CHAR(2)					      SYS-BYTE2CHAR(2)

NAME
       byte2char, char2byte - convert between bytes and characters

SYNOPSIS
       include "sys.m";
       sys := load Sys Sys->PATH;

       byte2char: fn(buf: array of byte, n: int): (int, int, int);
       char2byte: fn(c: int, buf: array of byte, n: int): int;

DESCRIPTION
       Byte2char converts a byte sequence to one Unicode character.  Buf is an
       array of bytes and n is the index of the first byte to examine  in  the
       array.	The  returned  tuple,  say  (c, length, status), specifies the
       result of the translation: c is the resulting Unicode character, status
       is  non-zero  if the bytes are a valid UTF sequence and zero otherwise,
       and length is set to the number of bytes consumed by  the  translation.
       If  the	input  sequence	 is not long enough to determine its validity,
       byte2char consumes zero bytes;  if  the	input  sequence	 is  otherwise
       invalid, byte2char consumes one input byte and generates an error char‐
       acter (Sys->UTFerror, 16r80), which prints in most  fonts  as  a	 boxed
       question mark.

       Char2byte  performs  the inverse of byte2char.  It translates a Unicode
       character, c, to a UTF byte sequence, which  is	placed	in  successive
       bytes  starting	at buf[n].  The longest UTF sequence for a single Uni‐
       code character is Sys->UTFmax (4) bytes.	 If the translation  succeeds,
       char2byte  returns  the	number	of bytes placed in the buffer.	If the
       buffer is too small to hold the	result,	 char2byte  returns  zero  and
       leaves the array unchanged.

SOURCE
       /libinterp/runt.c

SEE ALSO
       sys-intro(2), sys-utfbytes(2), utf(6)

DIAGNOSTICS
       A run-time error occurs if n exceeds the bounds of the array.

							      SYS-BYTE2CHAR(2)
[top]

List of man pages available for Inferno

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net