NAME

Parrot::Op

SYNOPSIS

use Parrot::Op;

DESCRIPTION

Represents a Parrot operation (op, for short).

arg_type

Returns a particular argument type.

arg_types

Returns the entire argument type list.

body

body BODY

Sets or returns the op's code body. If no BODY is given, the body is returned. If BODY is given, then the body is set.

full_body

For manual ops, full_body is the same as body. For auto ops, full_body adds a final {{+=S}} line to the code to represent the auto-computed return value (S is the op size).

full_name

For argumentless ops, it's the same as name. For ops with arguments, an underscore followed by underscore-separated argument types are appended to the name.

func_name

The same as full_name, but with "Parrot_" prefixed.

name

The (short or root) name of the op.

new TYPE, NAME, ARG_TYPE_LIST

Allocates a new bodyless op. A body must be provided eventually for the op to be usable. See body.

source RET_ABS_SUB RET_REL_SUB ARG_SUB RES_SUB

Returns the full_body of the op with substitutions made for the PC-modifying and argument-access placeholders.

type

The type of the op, 'auto' or 'manual'. Manual ops are responsible for having explicit next-op RETURNs, while Auto ops can count on an automatically generated next-op to be appended. See also full_body.

AUTHORS

Gregor N. Purdy <gregor@focusresearch.com>

LICENSE

This program is free software. It is subject to the same license as Parrot itself.

COPYRIGHT

Copyright (C) 2001 Gregor N. Purdy. All rights reserved.