struct Allegro::StaticUString

Overview

Statically allocated temporary Allegro-friendly UTF-8 string

This is usually enough for Allegro counterpart of Crystal stdlib String. However, the memory location cannot be moved, so you cannot copy the struct. You need #dup to treat a string as an objective manner.

Modifying string will return AllocatedUString.

Included Modules

Defined in:

Constructors

Instance Method Summary

Instance methods inherited from module Allegro::UString

<=>(str : String)
<=>(str : AnyUString)
<=>
, ==(str : String)
==(str : AnyUString)
==
, =~(regex : Regex) =~, [](range : Range) : AllocatedUString
[](index : Int32) : Char
[](start : Int, count : Int) : AllocatedUString
[]
, []?(start : Int, count : Int) : AllocatedUString?
[]?(index : Int32) : Char?
[]?(range : Range) : AllocatedUString?
[]?
, byte_at(index, &)
byte_at(index)
byte_at
, byte_at?(index) byte_at?, byte_index(byte : Int, offset = 0) : Int32? byte_index, bytes bytes, bytesize bytesize, dup : AllocatedUString dup, size size, to_s
to_s(io : IO)
to_s
, to_slice(size : Int = self.bytesize, *, copy = true) to_slice, to_utf16 to_utf16

Class methods inherited from module Allegro::UString

build(&) build, from_utf16(slice : Slice(UInt16)) : AllocatedUString from_utf16

Constructor Detail

def self.new(ref) #

Instance Method Detail

def to_unsafe #

Returns pointer to const ALLEGRO_USTR

WARNING: constness is not checked by API interface.