Banner showing base of Eiffel tower

Github

Download version 1.4.8: Windows or Linux

Base Library: Class ZSTRING

This library cluster has 58 classes.

ECF: base.ecf

Source code: directory list

An implementation of a memory compact string with the same unicode character range as the base.ecf class STRING_32 and conforming to STRING_GENERAL. The ZSTRING class (alias for EL_ZSTRING) has many additional routines not found in STRING_32, as for example: Python like tuple substitution.

See Articles

Benchmarks ZSTRING vs STRING_32

Directory: library/base/text/zstring

[ . ]

. /codec

. /codec/iso

. /codec/windows

. /cursor

. /implementation

. /support

[ . ]

EL_ZSTRING

Usually referenced with the alias ZSTRING, this string is a memory efficient alternative to using STRING_32. When an application mainly uses characters from the ISO-8859-15 character set, the memory saving can be as much as 70%, while the execution efficiency is roughly the same as for STRING_8. For short strings the saving is much less: about 50%. ISO-8859-15 covers most Western european languages.

Further Information

Click on class link to see tests, notes and client examples.

codec

EL_SHARED_UTF_8_ZCODEC

Shared utf 8 zcodec

EL_SHARED_ZCODEC_FACTORY

Shared access to frozen class EL_ZCODEC_FACTORY

Further Information

Click on class link to see client examples.

EL_SHARED_ZSTRING_CODEC

Defines codec to be used by class EL_ZSTRING for encoding characters in area

Further Information

Click on class link to see client examples.

EL_UTF_8_ZCODEC

Converts to and from UTF-8

EL_ZCODEC

Base class for Latin, Windows and UTF-8 codecs

Further Information

Click on class link to see notes and client examples.

EL_ZCODEC_FACTORY

Factory for character codecs conforming to EL_ZCODEC

Further Information

Click on class link to see notes.

EL_ZCODEC_IMPLEMENTATION

Implementation routines for EL_ZCODEC

codec/iso

EL_ISO_8859_10_ZCODEC

Codec for ISO_8859_10 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_11_ZCODEC

Codec for ISO_8859_11 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_13_ZCODEC

Codec for ISO_8859_13 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_14_ZCODEC

Codec for ISO_8859_14 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_15_ZCODEC

Codec for ISO_8859_15 automatically generated from decoder.c in VTD-XML source

Further Information

Click on class link to see client examples.

EL_ISO_8859_1_ZCODEC

ISO-8859-1 zcodec

Further Information

Click on class link to see client examples.

EL_ISO_8859_2_ZCODEC

Codec for ISO_8859_2 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_3_ZCODEC

Codec for ISO_8859_3 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_4_ZCODEC

Codec for ISO_8859_4 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_5_ZCODEC

Codec for ISO_8859_5 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_6_ZCODEC

Codec for ISO_8859_6 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_7_ZCODEC

Codec for ISO_8859_7 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_8_ZCODEC

Codec for ISO_8859_8 automatically generated from decoder.c in VTD-XML source

EL_ISO_8859_9_ZCODEC

Codec for ISO_8859_9 automatically generated from decoder.c in VTD-XML source

codec/windows

EL_WINDOWS_1250_ZCODEC

Codec for WINDOWS_1250 automatically generated from decoder.c in VTD-XML source

EL_WINDOWS_1251_ZCODEC

Codec for WINDOWS_1251 automatically generated from decoder.c in VTD-XML source

EL_WINDOWS_1252_ZCODEC

Codec for WINDOWS_1252 automatically generated from decoder.c in VTD-XML source

EL_WINDOWS_1253_ZCODEC

Codec for WINDOWS_1253 automatically generated from decoder.c in VTD-XML source

EL_WINDOWS_1254_ZCODEC

Codec for WINDOWS_1254 automatically generated from decoder.c in VTD-XML source

EL_WINDOWS_1255_ZCODEC

Codec for WINDOWS_1255 automatically generated from decoder.c in VTD-XML source

EL_WINDOWS_1256_ZCODEC

Codec for WINDOWS_1256 automatically generated from decoder.c in VTD-XML source

EL_WINDOWS_1257_ZCODEC

Codec for WINDOWS_1257 automatically generated from decoder.c in VTD-XML source

EL_WINDOWS_1258_ZCODEC

Codec for WINDOWS_1258 automatically generated from decoder.c in VTD-XML source

cursor

EL_SPLIT_ZSTRING_ON_CHARACTER

Optimized implementation of EL_SPLIT_ON_CHARACTER [ZSTRING]

EL_SPLIT_ZSTRING_ON_STRING

Optimized implementation of EL_SPLIT_ON_STRING [ZSTRING]

implementation

EL_APPENDABLE_ZSTRING

Appendable aspects of ZSTRING that use only 8-bit implemenation

Further Information

Click on class link to see client examples.

EL_CASELESS_COMPARE_ZSTRING_TO_STRING_32

EL_COMPARE_ZSTRING_TO_STRING_32 with case-insensitive comparisons

EL_CASELESS_COMPARE_ZSTRING_TO_STRING_8

EL_COMPARE_ZSTRING_TO_STRING_8 with case-insensitive comparisons

EL_CHARACTER_TESTABLE_ZSTRING

Implementation of status queries for EL_READABLE_ZSTRING related to presence of specified character sets for whole string or substring.

EL_COMPARABLE_ZSTRING

Comparison of current EL_READABLE_ZSTRING with other strings

Further Information

Click on class link to see client examples.

EL_COMPARABLE_ZSTRING_INTERVALS

EL_ZSTRING_INTERVALS that is comparable to string types other than ZSTRING

EL_COMPARE_ZSTRING_TO_STRING_32

Implementation of EL_ZSTRING_INTERVALS for comparing with strings conforming to READABLE_STRING_32

EL_COMPARE_ZSTRING_TO_STRING_8

Implementation of EL_ZSTRING_INTERVALS for comparing with strings conforming to READABLE_STRING_8

EL_CONVERTABLE_ZSTRING

Routines to convert instance of ZSTRING to another type or form

Further Information

Click on class link to see client examples.

EL_MEASUREABLE_ZSTRING

Measureable aspects of ZSTRING

EL_PREPENDABLE_ZSTRING

Prependable aspects of ZSTRING that use only 8-bit implemenation

Further Information

Click on class link to see client examples.

EL_READABLE_ZSTRING

Read only interface to class ZSTRING

Further Information

Click on class link to see tests and client examples.

EL_READABLE_ZSTRING_I

Abstract interface to class ZSTRING for use in implementation ancestors

Further Information

Click on class link to see descendants.

EL_SEARCHABLE_ZSTRING

Searchable aspects of ZSTRING

Further Information

Click on class link to see client examples.

EL_TRANSFORMABLE_ZSTRING

Implementation routines to transform instance of ZSTRING

Further Information

Click on class link to see client examples.

EL_WRITEABLE_ZSTRING

Writing contents of ZSTRING to external strings/objects

Further Information

Click on class link to see client examples.

EL_ZSTRING_CHARACTER_8_IMPLEMENTATION

Aspect of ZSTRING as an array of 8-bit characters

EL_ZSTRING_IMPLEMENTATION

Core implementation of ZSTRING using an 8 bit array to store characters encodeable by codec, and a compacted array of 32-bit arrays to encode any character not defined by the 8-bit encoding.

Further Information

Click on class link to see client examples.

EL_ZSTRING_INTERVALS

Traverseable intervals for ZSTRING including both encoded and unencoded

EL_ZSTRING_TO_BASIC_TYPES

Routines to convert instance of ZSTRING to basic and numeric types

support

EL_STRING_8_IMPLEMENTATION

EL_STRING_8 argument wrappers for EL_READABLE_ZSTRING

EL_ZCODE_CONVERSION

For use with class ZSTRING which redefines {READABLE_STRING_GENERAL}.code as z_code. A z_code is a hybrid of a Latin-x or Windows-x encoding and a UCS4 encoding. (We only refer to "latin" from here on)

Occassionaly a unicode character might clash with the range 0 .. 255 reserved for latin encodings. To get around this we set the sign bit to 1 to distinguish it. We can do this because the sign bit is unused in UCS4 unicode.

Further Information

Click on class link to see client examples.

EL_ZSTRING_ITERATION_CURSOR

CHARACTER_32 iterator for EL_READABLE_ZSTRING

Further Information

Click on class link to see client examples.

EL_ZSTRING_SEARCHER

Zstring searcher

EL_ZSTRING_UNESCAPER

Unescape strings conforming to EL_READABLE_ZSTRING

Further Information

Click on class link to see client examples.