1
/*******************************************************************************
2
* Simplified Wrapper and Interface Generator (SWIG)
4
* Author : David Beazley
6
* Department of Computer Science
7
* University of Chicago
10
* beazley@cs.uchicago.edu
12
* Please read the file LICENSE for the copyright and terms by which SWIG
13
* can be used and distributed.
14
*******************************************************************************/
16
class PHP4 : public Language {
18
virtual void main(int, char *argv[]);
19
virtual int top(Node *n);
20
virtual int functionWrapper(Node *n);
21
virtual int variableWrapper(Node *n);
22
virtual int constantWrapper(Node *n);
23
virtual void add_native(char *, char *, SwigType *, ParmList *);
24
virtual void create_command(char *, char *);
28
virtual int staticmembervariableHandler(Node *);
29
virtual int staticmemberfunctionHandler(Node *);
30
virtual int membervariableHandler(Node *);
31
virtual int memberfunctionHandler(Node *);
32
virtual int memberconstantHandler(Node *);
33
virtual int constructorHandler(Node *n);
34
virtual int destructorHandler(Node *n);
36
virtual int classHandler(Node *n);
37
virtual int classforwardDeclaration(Node *n);
38
virtual int typedefHandler(Node *);
40
virtual void pragma(char *lang, char *code, char *value);
44
void emit_shadow_classdef();
45
void SwigToPhpType(SwigType *t, String_or_char *pname, String *php_type, int shadow_flag);
46
char *PhpTypeFromTypemap(char *op, SwigType *t, String_or_char *pname, String_or_char *iname);
47
void cpp_func(char *iname, SwigType *t, ParmList *l, String *php_function_name);