Next: Components, Previous: The object model of asdf, Up: The object model of asdf
An operation object of the appropriate type is instantiated whenever the user wants to do something with a system like
Operations can be invoked directly, or examined to see what their effects would be without performing them. FIXME: document how! There are a bunch of methods specialised on operation and component type that actually do the grunt work.
The operation object contains whatever state is relevant for this purpose (perhaps a list of visited nodes, for example) but primarily is a nice thing to specialise operation methods on and easier than having them all be EQL methods.
Operations are invoked on systems via operate
.
operate
invokes operation on system.oos
is a synonym foroperate
.operation is a symbol that is passed, along with the supplied initargs, to
make-instance
to create the operation object. system is a system designator.The initargs are passed to the
make-instance
call when creating the operation object. Note that dependencies may cause the operation to invoke other operations on the system or its components: the new operations will be created with the same initargs as the original one.