CreateRangePool (FUN) ¶ FUNCTION CreateRangePool : IRangePool Creates a pool for IRange instances in the specified memory space InOut: Scope Name Type Initial Comment Return CreateRangePool IRangePool Input pbyPool POINTER TO BYTE Pointer to the first byte of the memory. This address should aligned to a __XWORD boundary! udiPoolSize UDINT Size of the allocated memory for the range pool. This size must not be smaller than SIZEOF(_RangePool) , because it includes an instance of _RangePool(FB) usiExtensionFactor USINT 0 Optional extension factor of the IRangePool instance Output eErrorID ERROR
CreateString (FUN) ¶ FUNCTION CreateString : IString Returns a IString instance placed in the memory area given by the parameters. Example for a 80 byte IString instance: udiCapacity : UDINT ; // Capacity of the new String axwMemory : ARRAY [0..(SIZEOF(_UTF8String)+79) / SIZEOF(__XWORD)] OF __XWORD ; itfString : IString := CreateString ( ADR ( axwMemory ), SIZEOF ( axwMemory ), 0 , udiStrSize => udiCapacity ); InOut: Scope Name Type Initial Comment Return CreateString IString Input pbyMemory POINTER TO BYTE Pointer to the first byte of the memory. This address should aligned to a __XWORD boundary! udiMemSize UDINT Size of the allocated memory for the string. This also includes the memory for the _UTF8String instance, so the function block of string instance. If e.g. a 80 byte string is requred than memory size would be SIZEOF(STR._UTF8String) + 80 psValue POINTER TO BYTE 0 optional address of a utf-8 encoded, zero terminated byte array (string), used as inital value Output udiStrSize UDINT The capacity in bytes of the new IString instance eErrorID ERROR
CreateStringPool (FUN) ¶ FUNCTION CreateStringPool : IStringPool Creates a pool for IString instances in the specified memory space The size of the strings is specified via udiStringSize InOut: Scope Name Type Initial Comment Return CreateStringPool IStringPool Input udiStringSize UDINT pbyPool POINTER TO BYTE Pointer to the first byte of the memory. This address should aligned to a __XWORD boundary! udiPoolSize UDINT Size of the allocated memory for the range. This size must not be smaller than SIZEOF(_StringPool) , because it includes an instance of _StringPool(FB) usiExtensionFactor USINT 0 Optional extension factor of the IStringPool instance Output eErrorID ERROR
IsValidString (FUN) ¶ FUNCTION IsValidString : BOOL Reports whether itfString consists entirely of valid UTF-8-encoded runes. InOut: Scope Name Type Return IsValidString BOOL Input itfString IString Output eErrorID ERROR
Len (FUN) ¶ FUNCTION Len : UDINT Returns the number of bytes required for the UTF-8 encoded string segment of ifString . InOut: Scope Name Type Return Len UDINT Input itfString IString Output eErrorID ERROR
Reset (FUN) ¶ FUNCTION Reset : ERROR Set back the empty state of this IString instance InOut: Scope Name Type Return Reset ERROR Input itfString IString
IStringRepresentation.ToIString (METH) ¶ METHOD ToIString : IString Returns the string representation InOut: Scope Name Type Initial Comment Return ToIString IString Input itfString IString Defines the output target liStart LINT 0 Defines the rune index from which the content is output 0 => first rune, -1 => last rune [c_liMinIndex <= liStart <= c_liMaxIndex] liEnd LINT -1 Defines the rune index up to which the content is output 0 => first rune, -1 => last rune [c_liMinIndex <= liEnd <= c_liMaxIndex] Output eErrorID ERROR
File and Project Information ¶ Scope Name Type Content FileHeader creationDateTime date 21.06.2023, 11:09:12 companyName string 3S-Smart Software Solutions GmbH libraryFile String Segments.library primaryProject True productName CODESYS productProfile CODESYS V3.5 SP16 Patch 3 contentFile String Segments.clean.json version version 2.0.0.0 ProjectInformation AutoResolveUnbound bool True Released True LastModificationDateTime date 21.06.2023, 11:09:11 LibraryCategories library-category-list Application|Strings Author string CODESYS Development GmbH Company CODESYS CompiledLibraryCompatibilityVersion CODESYS V3.5 SP16 Patch 3 DefaultNamespace STR Description See: Description DocFormat reStructuredText LanguageModelAttribute qualified-access-only LibDocContent DocsOnly Placeholder StringSegs Project String Segments Title String Segments UnitTestingDefine IStringTesting Version version 4.0.0.0
Library Reference ¶ This is a dictionary of all referenced libraries and their name spaces. Memory Block Manager ¶ Library Identification ¶ Placeholder: MemoryBlockManager Default Resolution: Memory Block Manager, * (3S - Smart Software Solutions GmbH) Namespace: MBM Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: MemoryBlockManager SysMem ¶ Library Identification ¶ Placeholder: SysMem Default Resolution: SysMem, * (System) Namespace: SysMem Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: SysMem UTF-8 Encoding Support ¶ Library Identification ¶ Placeholder: UTF8 Default Resolution: UTF-8 Encoding Support, * (CODESYS) Namespace: UTF8 Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: UTF8
Range.GetNextRune (METH) ¶ METHOD FINAL GetNextRune : RUNE Unpacks the next UTF-8 encoding in a IString instance and returns the rune and its length in bytes. InOut: Scope Name Type Return GetNextRune RUNE Output udiLength UDINT eErrorID ERROR