www.delorie.com/gnu/docs/guile/goops_22.html   search  
Buy GNU books!

Goops Manual

[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

3.3.1 Basic Instance Creation

To create a new instance of any GOOPS class, use the generic function make or make-instance, passing the required class and any appropriate instance initialization arguments as keyword and value pairs. Note that make and make-instances are aliases for each other - their behaviour is identical.

generic: make
method: make (class <class>) . initargs
Create and return a new instance of class class, initialized using initargs.

In theory, initargs can have any structure that is understood by whatever methods get applied when the initialize generic function is applied to the newly allocated instance.

In practice, specialized initialize methods would normally call (next-method), and so eventually the standard GOOPS initialize methods are applied. These methods expect initargs to be a list with an even number of elements, where even-numbered elements (counting from zero) are keywords and odd-numbered elements are the corresponding values.

GOOPS processes initialization argument keywords automatically for slots whose definition includes the #:init-keyword option (see section init-keyword). Other keyword value pairs can only be processed by an initialize method that is specialized for the new instance's class. Any unprocessed keyword value pairs are ignored.

generic: make-instance
method: make-instance (class <class>) . initargs
make-instance is an alias for make.

  webmaster     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003