tads.h file | source file

This file is part of TADS 3.

This file includes all of the standard TADS system headers, so programs can include this header alone rather than having to include all of the separate headers individually.

Summary of Classes

(none)

Summary of Global Functions

(none)

Summary of Macros

`_tads_io_say breakLoop perInstance TADS_IO_HEADER`

Summary of Enums

(none)

Summary of Templates

(none)

Global Functions

(none)

Macros

`_tads_io_say (str)` | `tads.h[29]`

`tadsSay(str)`
no description available

`breakLoop` | `tads.h[58]`

`throw BreakLoopSignal`
Break out of a callback iteration, such as a forEachInstance() loop. This can be used within the callback code to break out of the loop.

`perInstance (expr)` | `tads.h[81]`

`(self.(targetprop) = (expr))`
Define a property value using an expression that's evaluated once per instance of the class where the property is defined. This is used like so:

class MyClass: MySuperClass
prop1 = perInstance(new SubObject())
;

Now, for each instance of MyClass, prop1 will be set to a separate instance of SubObject.

Note that the per-instance property value is set "on demand" in each instance. This means that a particular instance's copy of the property will be set when the property is first evaluated. Note in particular that the value won't necessary be computed at compile time or during pre-initialization, because the value for a particular instance won't be calculated until the property is first used for a that instance.

`TADS_IO_HEADER` | `tads.h[26]`

`"tadsio.h"`
To allow the standard library and header files to be used with alternative I/O intrinsics, we explicitly use macros for the I/O dependencies in the library - specifically, the I/O intrinsic header file name, and the name of the default stream output function.

We define defaults for these if they aren't otherwise defined. To compile library files with an alternative set of I/O intrinsics, define these symbols in the compiler (for example, by using the -D command-line option with t3make).

Enums

(none)

Templates

(none)

Adv3Lite Library Reference Manual
Generated on 02/05/2024 from adv3Lite version 2.0