Tags:
create new tag
view all tags

Unicode ILF Literals

The ILF editor and compiler have been reworked to support the following Unicode literals.

Overview

ILF Literal values are stored in the STMT file as RAW Alpha character.

An ILF literal may include Unicode escape sequences provided that the other operand is a UNICODE or NATIONAL alpha field.

Unicode escape sequences are not supported if the other operand is a RAW alpha field or a group header.

Supported Unicode escape sequences where '#' is a hex-digit:

  • \u#### (4 hex digits)
  • \U######## (8 hex digits)

The process compiler will compile literals to optimize runtime processing using these rules:

  • If the field type of the other operand is Unicode or National the literal will compile to a UTF-32 literal.
  • If the field type of the other operand is Raw the literal will be compiled to a RAW literal.

Test Plan:

Encoding Types:

Test Requirements:

  1. Are unicode literals interpreted as characters when the left operand is a RAW alpha?
  2. Are unicode literals treated correctly when the left operand is UNICODE and NATIONAL?

BUGS

  1. Entering invalid literals causes process not to run (first attempt) or Appx to crash (second attempt). Invalid literal examples: \U with less than 8 hex digits, or \u with non hex digits. * FIXED * April 5 engine. Invalid literals create compile time errors.
Edit | Attach | Watch | Print version | History: r5 < r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r5 - 2011-04-06 - JeanNeron
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback