Objective-Everything Release 5.  Copyright ©1994-1998 by TipTop Software, Inc.  All Rights Reserved.

  Introspection

Unparse

The unparse command lets you peek at the ObjC runtime information.

unparse(obj[, kwflags])

If obj is a class object, unparse returns a string corresponding to the Objective-C-style @interface declaration for the class.  If obj is a protocol, unparse returns a string corresponding to the @protocol declaration for the protocol.  If obj is an object, then its class is unparsed.

Keyword arguments:
decomp => v
if non-zero, method implementation bodies for Objective-Everything-defined methods will be included.
verbose => v
if non-zero, type names are fully expanded.

Info

The main introspection functionality is available via the Info submodule.

Info::classes([pattern])

Returns a list of all class names which match the pattern.

Info::protocols([pattern])

Returns a list of all protocol names known to the Objective-Everything runtime system which match the pattern.

Info::ids([pattern])

Returns a list of all objects names registered with the Objective-Everything runtime system which match the pattern.

Info::types([pattern])

Returns a list of all type names known to the system which match the pattern.

Info::functions([pattern])

Returns a list of all function names known to the system which match the pattern.

Info::globals([pattern])

Returns a list of all global variable names known to the system which match the pattern.

Info::constants([pattern])

Returns a list of all constant names known to the system which match the pattern.


Info::methods(clazz[, pattern[, kwflags]])

Returns a list of all method names in the class which match the pattern.  To obtain method information for a specific instance o, simply use $o->{'isa'} as the clazz argument.

Flag arguments:
all => v
if non-zero, all superclasses are searched as well.
name => v
if non-zero, only method selector names, rather than full prototypes are returned.
decomp => v
if non-zero, method body implementation is returned.
who => v
if non-zero, each element in the list returned consists of a class name and a selector name.
Info::ivars(clazz[, pattern[, kwargs]])

Returns a list of instance variable names declared in the class which match the pattern.


Info::argnames(clazz,selector)

Returns a list of argument names for the specified method in class.

Info::argtypes(clazz,selector)

Returns a list of argument types for the specified method in class.

Info::body(clazz,selector)

Returns method implementation body.

Info::language(clazz,selector)

Returns language name in which the specified method is implemented.

Info::ivartype(clazz,name)

Returns type of the specified instance variable in class.


Info::os

Returns OS name.

Info::os_version

Returns OS version.

Info::arch

Returns architecture name.

Info::version

Returns the ObjPerl version number.

Info::tiptop

Returns TipTop contact information.

Info::copyright

Returns TipTop copyright information.


[previous][contents][next]