Version 2 (modified by plobsing, 11 years ago)

--

Parrot Deprecations for 3.0

Exchange Op

Description

The exchange ops are deprecated.

Rationale

They operate at too low a level to be useful as parrot ops.

Replacement

You aren't using this. Seriously?

.macro xchg_int(a, b)
    $I0 = .a
    .a = .b
    .b = $I0
.endm

PIR string literals with charset and encoding are deprecated

Description

PIR string literals of the form

encoding:charset:"string"

are deprecated.

Rationale

After the charset/encoding merge, they're unneeded.

Replacement

They can be replaced with

encoding:"string"

The encoding should be one of the new unified encodings.

Remaining string_* functions are deprecated

Description

The string_* functions have been deprecated for a while. The remaining functions are:

string_make
string_ord
string_chr
string_to_cstring_nullable
string_max_bytes
string_increment

Rationale

They're old cruft.

Replacement

string_make should be replaced with Parrot_str_new_init. You can use Parrot_find_encoding to get an encoding from a cstring.

Replace string_ord with Parrot_str_indexed.

Replace string_chr with Parrot_str_chr.

Replace string_to_cstring_nullable with Parrot_str_to_cstring.

string_max_bytes and string_increment will be removed.