Index | PAL Intro | Commands | Registers | Indices | Stack | Macros | Classes | Attributes | Errors


Manual Reference Pages  - obj_def (5)

NAME

obj/def - Define a new object edit buffer

CONTENTS

Synopsis
Description
Examples
See Also
Author

SYNOPSIS

obj/def write <, write ... >

DESCRIPTION

Initialises new object edit buffers and stores a reference to the buffers in each subsequent write register. The buffers will initially be empty.

Object edit buffers are used to collect together a group of commands that can be committed to nexus objects. These commands are:

Class add
  Add a new class to an object. See class_add(5).
Class delete
  Remove a class from an object. See class_del(5).
Attribute add
  Add a new attribute value to an object. See attr_add(5).
Attribute delete
  Remove an attribute from an object. See attr_del(5).
Attribute modify
  Replace an attribute in an object. See attr_mod(5).
Multi-value attribute add
  Add multiple attribute values to an object. See attr_mvmod(5).
Multi-value attribute delete
  Remove multiple attribute values from an object. See attr_mvdel(5).
Multi-value attribute modify
  Find and replace multiple attribute values within an object. See attr_mvmod(5).

Once an edit buffer has been prepared with the appropriate commands, a number of actions may be requested:

Commit
  Commit changes to a new or existing nexus object. See obj_commit(5).
Clone
  Clone the edit buffer so that it may be committed to more than one object. An edit buffer cannot be cloned after it has been committed. See obj_clone(5).
Clear
  Clear the edit buffer and release any memory that was claimed by it. This is required only if the buffer is not going to be committed. See obj_clear(5).

EXAMPLES

The following demonstrates the use of edit buffers for modifying nexus objects.

.main  
% Initialise an empty edit buffer
obj/def P0

% Add a class class/add P0, [psErrorType]
% Add an attribute attr/add P0, [description], [No such user or group]
% Commit to nexus obj/commit [NoSuchUser], P0

SEE ALSO

pal_commands(5), pal_registers(5), obj_clone(5), obj_edit(5), obj_commit(5), obj_clear(5), class_add(5), class_del(5), attr_add(5), attr_del(5), attr_mod(5), attr_mvadd(5), attr_mvdel(5), attr_mvmod(5),
PROSE Assembly Language at prose.sourceforge.net.

AUTHOR

Copyright (c) 2002-2016 Mark R. Bannister <cambridge@users.sourceforge.net>.

This is free software and can be downloaded from prose.sourceforge.net; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


PAL 1.0 obj_def (5) 29 April 2016
Generated by manServer 1.07 from man5/obj_def.5 using man macros.