Carapace supports the following built-in classes:
| basic | the basic types of the language |
| system | operating-system features |
| comms | communications-related classes |
| COM | COM-related classes |
| database | classes to give you access to relational databases |
To complement these classes, there are several built-in functions.
The following classes provide the basic types of the language:
| List | a list is an ordered sequence of objects which can be extended |
| String | strings of characters ending with a null byte |
| Integer | integer numbers |
| Real | real numbers (floating-point) |
| Binary | sequence of any characters (including nulls) |
| Buffer | extensible sequence of any characters (including nulls) |
| Symbol | a name eg. of a function or variable |
| Error | an error |
| Array | an array of entries - which cannot be extended |
| HashTable | a lookup table |
| Reference | holds a reference to another object |
The following classes encapsulate operating-system features:
| Registry | provides access to the system registry which holds configuration information |
| Thread | a thread is an independent processing agent |
| Event | an event - used to synchronise threads or processes |
| Lock | a lock prevents concurrent access to a shared resource |
| LifetimeLock | a lifetime lock holds the lock for the lifetime of the object |
| CriticalSection | a critical section, like a lock, protects against concurrent access of a resource |
| Stream | a stream gives access to files, standard input/output etc. |
| Shortcut | a shortcut to the file -- on the user's desktop, for example |
The following classes are used for communications between components:
| CommsStack | a stack of communication modules |
| Tcp | TCP/IP communication module |
| X25 | X.25 communication module |
| Ras | dialup TCP communications object |
| Serial | Serial port communication module |
| Tapi | Telephone API communication module |
| Telnet | Telnet protocol communication module |
| Ftp | FTP (File Transfer Protocol) communication module |
| Mime | MIME (Multipurpose Internet Mail Extensions) helper class |
| Smtp | SMTP (Simple Mail Transfer Protocol) communication module |
| Pop3 | POP3 (Post Office Protocol) communication module |
| Http | HTTP (Hypertext Transfer Protocol) communication module |
| Util | a utility communication module |
| ScriptModule | a wrapper to allow a class defined in Carapace script to be used as a comms module |
| Screen | a screen-mapper used to map simple character-based displays |
| Queue | a queue of items - used for inter-thread communication |
| Log | a log file - used to record communication traffic |
| Udp | UDP (user datagram) class for transferring IP datagrams |
The following classes are used for COM support:
| Guid | a GUID is a globally unique identifier |
| Unknown | wraps an IUnknown interface from which all other COM interfaces are derived |
| Dispatch | wraps an IDispatch interface - a generic COM interface used to communicate with many COM servers |
| Typelib | a type library defines a set of COM components |
| Apartment | an apartment offers COM server capability |
| Enumerator | enumerates over a set of objects |
| ComStream | used to pass COM objects between threads |
Via COM, Carapace uses the ActiveX Data Objects (ADO) for connecting to databases. ADO provides an interface onto a wide variety of data sources including relational databases, such as Oracle or Sybase, or the Microsoft Active Directory Service.
The following objects are used for database access:
| Db | a Carapace helper-class to make ADO easier to use |
| ADODB.Connection | the basic connection onto the database |
| ADODB.Command | a parameterised SQL command |
| ADODB.RecordSet | a view onto a set of rows within the database |
| Decimal | database columns can hold a decimal value whose precision exceeds that of the Carapace Integer or Real types |
| Contents | Index | Current topic: objects | Related topics: functions |