pike.git/
src/
program.c
Branch:
Tag:
Non-build tags
All tags
No tags
2001-05-05
2001-05-05 21:00:17 by Henrik Grubbström (Grubba) <grubba@grubba.org>
83c261ec313638b11e8fe5e517fb6a6dc053c268 (
178
lines) (+
90
/-
88
)
[
Show
|
Annotate
]
Branch:
7.9
Some cosmetic AutoDoc mk II markup changes.
Rev: src/program.c:1.319
5:
\*/ /**/ #include "global.h"
-
RCSID("$Id: program.c,v 1.
318
2001/05/05
13
:
58
:
02
grubba Exp $");
+
RCSID("$Id: program.c,v 1.
319
2001/05/05
21
:
00
:
17
grubba Exp $");
#include "program.h" #include "object.h" #include "dynamic_buffer.h"
204:
/*! @decl void lfun::__INIT() *!
-
*! Global variable initialization.
+
*!
Global variable initialization.
*!
-
*! This function is called just before @[lfun::create()] when
-
*! an object is instanciated.
+
*!
This function is called just before @[lfun::create()] when
+
*!
an object is instanciated.
*! *! @note *! This function is generated automatically by the compiler,
219:
/*! @decl void lfun::create(zero ... args) *!
-
*! Object creation callback.
+
*!
Object creation callback.
*!
-
*! This function is called right after @[lfun::__INIT()].
+
*!
This function is called right after @[lfun::__INIT()].
*!
-
*! @[args] will be the arguments passed when the program was called.
+
*!
@[args] will be the arguments passed when the program was called.
*!
-
*! In Pike 7.2 and later this function can be created implicitly
-
*! by the compiler using the new syntax:
-
*! @code{
-
*! class Foo(int foo) {
-
*! int bar;
-
*! }
-
*! @}
-
*! In the above case an implicit @[lfun::create()] will be created,
-
*! and it will be equvivalent to:
-
*! @code{
-
*! class Foo {
-
*! int foo;
-
*! int bar;
-
*! static void create(int foo)
-
*! {
-
*! local::foo = foo;
-
*! }
-
*! }
-
*! @}
+
*!
In Pike 7.2 and later this function can be created implicitly
+
*!
by the compiler using the new syntax:
+
*!
@code{
+
*!
class Foo(int foo) {
+
*!
int bar;
+
*!
}
+
*!
@}
+
*!
In the above case an implicit @[lfun::create()] will be created,
+
*!
and it will be equvivalent to:
+
*!
@code{
+
*!
class Foo {
+
*!
int foo;
+
*!
int bar;
+
*!
static void create(int foo)
+
*!
{
+
*!
local::foo = foo;
+
*!
}
+
*!
}
+
*!
@}
*! *! @seealso *! @[lfun::__INIT()], @[lfun::destroy()]
251:
/*! @decl void lfun::destroy() *!
-
*! Object destruction callback.
+
*!
Object destruction callback.
*!
-
*! This function is called by @[destruct()] right before
-
*! it will zero all the object variables, and destroy the object.
+
*!
This function is called by @[destruct()] right before
+
*!
it will zero all the object variables, and destroy the object.
*! *! @seealso *! @[lfun::create()], @[destruct()]
262:
/*! @decl mixed lfun::`+(zero ... args) *!
-
*! Left associative addition operator callback.
+
*!
Left associative addition operator callback.
*! *! @seealso *! @[lfun::``+()], @[`+()]
270:
/*! @decl mixed lfun::`-(zero ... args) *!
-
*! Left associative subtraction operator callback.
+
*!
Left associative subtraction operator callback.
*! *! @seealso *! @[lfun::``-()], @[`-()]
278:
/*! @decl mixed lfun::`&(zero ... args) *!
-
*! Left associative and operator callback.
+
*!
Left associative and operator callback.
*! *! @seealso *! @[lfun::``&()], @[`&()]
286:
/*! @decl mixed lfun::`|(zero ... args) *!
-
*! Left associative or operator callback.
+
*!
Left associative or operator callback.
*! *! @seealso *! @[lfun::``|()], @[`|()]
294:
/*! @decl mixed lfun::`^(zero ... args) *!
-
*! Left associative exclusive or operator callback.
+
*!
Left associative exclusive or operator callback.
*! *! @seealso *! @[lfun::``^()], @[`^()]
302:
/*! @decl mixed lfun::`<<(zero arg) *!
-
*! Left associative left shift operator callback.
+
*!
Left associative left shift operator callback.
*! *! @seealso *! @[lfun::``<<()], @[`<<()]
310:
/*! @decl mixed lfun::`>>(zero arg) *!
-
*! Left associative right shift operator callback.
+
*!
Left associative right shift operator callback.
*! *! @seealso *! @[lfun::``>>()], @[`>>()]
318:
/*! @decl mixed lfun::`*(zero ... args) *!
-
*! Left associative multiplication operator callback.
+
*!
Left associative multiplication operator callback.
*! *! @seealso *! @[lfun::``*()], @[`*()]
326:
/*! @decl mixed lfun::`/(zero ... args) *!
-
*! Left associative division operator callback.
+
*!
Left associative division operator callback.
*! *! @seealso *! @[lfun::``/()], @[`/()]
334:
/*! @decl mixed lfun::`%(zero ... args) *!
-
*! Left associative modulo operator callback.
+
*!
Left associative modulo operator callback.
*! *! @seealso *! @[lfun::``%()], @[`%()]
342:
/*! @decl mixed lfun::`~() *!
-
*! Inversion operator callback.
+
*!
Inversion operator callback.
*! *! @seealso *! @[`~()]
350:
/*! @decl int(0..1) lfun::`==(mixed arg) *!
-
*! Equality operator callback.
+
*!
Equality operator callback.
*! *! @seealso *! @[`==()]
358:
/*! @decl int(0..1) lfun::`<(mixed arg) *!
-
*! Less than operator callback.
+
*!
Less than operator callback.
*! *! @seealso *! @[`<()]
366:
/*! @decl int(0..1) lfun::`>(mixed arg) *!
-
*! Greater than operator callback.
+
*!
Greater than operator callback.
*! *! @seealso *! @[`>()]
374:
/*! @decl int lfun::__hash() *!
-
*! Hashing callback.
+
*!
Hashing callback.
*!
-
*! FIXME: When is this used?
+
*!
FIXME: When is this used?
*/ /*! @decl mixed lfun::cast(string requested_type) *!
-
*! Cast operator callback.
+
*!
Cast operator callback.
*! *! @note *! The argument is currently (Pike 7.2) a string with the name
390:
/*! @decl int lfun::`!() *!
-
*! Not operator callback.
+
*!
Not operator callback.
*! *! @seealso *! @[`!()]
398:
/*! @decl mixed lfun::`[](zero arg1, zero|void arg2) *!
-
*! Index/range operator callback.
+
*!
Index/range operator callback.
*! *! @seealso *! @[`[]()]
406:
/*! @decl mixed lfun::`[]=(zero arg1, zero arg2) *!
-
*! Index assignment operator callback.
+
*!
Index assignment operator callback.
*! *! @seealso *! @[`[]=()]
414:
/*! @decl mixed lfun::`->(string arg) *!
-
*! Arrow index operator callback.
+
*!
Arrow index operator callback.
*! *! @seealso *! @[`->()]
422:
/*! @decl mixed lfun::`->=(string arg1, zero arg2) *!
-
*! Arrow index assign operator callback.
+
*!
Arrow index assign operator callback.
*! *! @seealso *! @[`->=()]
430:
/*! @decl int lfun::_sizeof() *!
-
*! Sizeof operator callback.
+
*!
Sizeof operator callback.
*! *! @seealso *! @[sizeof()]
438:
/*! @decl array lfun::_indices() *!
-
*! Indices operator callback.
+
*!
Indices operator callback.
*! *! @seealso *! @[indices()]
446:
/*! @decl array lfun::_values() *!
-
*! Values operator callback.
+
*!
Values operator callback.
*! *! @seealso *! @[values()]
454:
/*! @decl mixed lfun::`()(zero ... args) *!
-
*! Function call operator callback.
+
*!
Function call operator callback.
*! *! @seealso *! @[`()]
462:
/*! @decl mixed lfun::``+(zero ... args) *!
-
*! Right associative addition operator callback.
+
*!
Right associative addition operator callback.
*! *! @seealso *! @[lfun::`+()], @[`+()]
470:
/*! @decl mixed lfun::``-(zero ... args) *!
-
*! Right associative subtraction operator callback.
+
*!
Right associative subtraction operator callback.
*! *! @seealso *! @[lfun::`-()], @[`-()]
478:
/*! @decl mixed lfun::``&(zero ... args) *!
-
*! Right associative and operator callback.
+
*!
Right associative and operator callback.
*! *! @seealso *! @[lfun::`&()], @[`&()]
486:
/*! @decl mixed lfun::``|(zero ... args) *!
-
*! Right associative or operator callback.
+
*!
Right associative or operator callback.
*! *! @seealso *! @[lfun::`|()], @[`|()]
494:
/*! @decl mixed lfun::``^(zero ... args) *!
-
*! Right associative exclusive or operator callback.
+
*!
Right associative exclusive or operator callback.
*! *! @seealso *! @[lfun::`^()], @[`^()]
502:
/*! @decl mixed lfun::``<<(zero arg) *!
-
*! Right associative left shift operator callback.
+
*!
Right associative left shift operator callback.
*! *! @seealso *! @[lfun::`<<()], @[`<<()]
510:
/*! @decl mixed lfun::``>>(zero arg) *!
-
*! Right associative right shift operator callback.
+
*!
Right associative right shift operator callback.
*! *! @seealso *! @[lfun::`>>()], @[`>>()]
518:
/*! @decl mixed lfun::``*(zero ... args) *!
-
*! Right associative multiplication operator callback.
+
*!
Right associative multiplication operator callback.
*! *! @seealso *! @[lfun::`*()], @[`*()]
526:
/*! @decl mixed lfun::``/(zero ... args) *!
-
*! Right associative division operator callback.
+
*!
Right associative division operator callback.
*! *! @seealso *! @[lfun::`/()], @[`/()]
534:
/*! @decl mixed lfun::``%(zero ... args) *!
-
*! Right associative modulo operator callback.
+
*!
Right associative modulo operator callback.
*! *! @seealso *! @[lfun::`%()], @[`%()]
542:
/*! @decl mixed lfun::`+=(zero arg) *!
-
*! Self increment operator callback.
+
*!
Self increment operator callback.
*! *! @seealso *! @[`+()], @[lfun::`+()]
550:
/*! @decl int(0..1) lfun::_is_type(string arg) *!
-
*! Type comparison callback.
+
*!
Type comparison callback.
*! *! @note *! The argument is currently (Pike 7.2) a string with the name
560:
/*! @decl string lfun::_sprintf(int conversion_type, @ *! mapping(string:int)|void params) *!
-
*! Sprintf callback.
+
*!
Sprintf callback.
*! *! @seealso *! @[sprintf()]
568:
/*! @decl int lfun::_equal(mixed arg) *!
-
*! Equal callback.
+
*!
Equal callback.
*! *! @seealso *! @[equal()], @[lfun::`==()]
576:
/*! @decl mixed lfun::_m_delete(mixed arg) *!
-
*! Mapping delete callback.
+
*!
Mapping delete callback.
*! *! @seealso *! @[m_delete()]
584:
/*! @decl object lfun::_get_iterator() *!
-
*! Iterator creation callback.
+
*!
Iterator creation callback.
*!
-
*! Should return an object that implements the iterator API:
-
*! @dl
-
*! @item
-
*! @[lfun::`!()] should return @tt{1@} when not at end of stream,
-
*! and @tt{0@} (zero) at end of stream.
-
*! @item
-
*! @[lfun::`+=()] should advance the specified number of steps.
-
*! @item
-
*! @[index()] should return the current index.
-
*! @item
-
*! @[value()] should return the current value.
-
*! @enddl
+
*!
@returns
+
*!
Should return an object that implements the iterator API:
+
*!
@dl
+
*!
@item
+
*!
@[lfun::`!()] should return @tt{1@} when not at end of stream,
+
*!
and @tt{0@} (zero) at end of stream.
+
*!
@item
+
*!
@[lfun::`+=()] should advance the specified number of steps.
+
*!
@item
+
*!
@[index()] should return the current index.
+
*!
@item
+
*!
@[value()] should return the current value.
+
*!
@enddl
*! *! @seealso *! @[Iterator], @[foreach()]