#### 2.2.1 General object functions

Function: object? obj

  Returns ‘`#t`’ if and only if obj is an `object`.

Function: copy-object object

  Returns a deep copy of object. The new `object` returned has no attached attributes, and is not part of a `page` or part of a component `object`.

Function: object-component object

  Returns the component `object` that contains object, or ‘`#f`’ if object is not part of a component.

Function: object-connections object

  Returns a list of other `object`s that are directly connected to object. If `object` is not included in a `page`, raises an ‘`object-state`’ error. The connections reported are independent of inclusion in components.

  For example, consider a page containing a net and a component, and the component contains a single pin. If the connectable end of the pin intersects the net, then `(object-connections <net>)` will return a list containing the pin `object`, and not the component.

Function: object-selectable? object

  Returns true (‘`#t`’) if object is selectable (i.e. not locked).

Function: set-object-selectable! object state

  Sets the selectable flag for object. If state is ‘`#f`’, clears the selectable flag; if state is ‘`#t`’, sets it. Returns object.

Function: object-embedded? object

  Returns true (‘`#t`’) if object is embedded, false (‘`#f`’) otherwise.

Function: set-object-embedded! object state

  Embed (if state is ‘`#t`’) or unembed (if state is ‘`#t`’) object. Returns object.