repos
/
smoke
/ annotate_shade
summary
|
shortlog
|
log
|
tree
|
commit
|
commitdiff
|
headdiff
|
annotate
|
headblob
|
headfilediff
|
filehistory
normal
|
plain
|
shade
|
zebra
No need to construct a SmokeBinding per Smoke module.
Annotate for file src/libsmoke/smokebinding.h
2010-01-10 tobias
1
#ifndef SMOKEBINDING_H
08:49:36 '
2
#define SMOKEBINDING_H
2009-04-05 tobias
3
15:36:29 '
4
#include <smoke.h>
'
5
'
6
namespace cl_smoke
'
7
{
'
8
2010-02-18 tobias
9
class NoDispatchBinding : public SmokeBinding
2009-04-05 tobias
10
{
15:36:29 '
11
public:
2009-06-22 tobias
12
typedef void (*destructed)(void* object);
2009-04-05 tobias
13
2010-02-19 tobias
14
NoDispatchBinding(destructed destruct);
2009-04-05 tobias
15
15:36:29 '
16
virtual void
2009-06-22 tobias
17
deleted(Smoke::Index classId, void *object);
2009-04-05 tobias
18
15:36:29 '
19
virtual bool
'
20
callMethod(Smoke::Index method, void* object,
'
21
Smoke::Stack stack, bool abstract);
'
22
'
23
virtual char*
'
24
className(Smoke::Index classId);
'
25
'
26
private:
'
27
const destructed destruct;
2010-02-18 tobias
28
};
19:57:00 '
29
'
30
class Binding : public NoDispatchBinding
'
31
{
'
32
public:
2010-02-19 tobias
33
typedef int (*dispatch_method)(Smoke::Index method,
2010-02-18 tobias
34
void* object, Smoke::Stack args, int abstract);
19:57:00 '
35
2010-02-19 tobias
36
Binding(destructed destruct, dispatch_method dispatch);
2010-02-18 tobias
37
19:57:00 '
38
'
39
virtual bool
'
40
callMethod(Smoke::Index method, void* object,
'
41
Smoke::Stack stack, bool abstract);
'
42
'
43
'
44
private:
2009-04-05 tobias
45
const dispatch_method dispatch;
15:36:29 '
46
};
'
47
'
48
} // namespace cl_smoke
'
49
2010-01-10 tobias
50
#endif // SMOKEBINDING_H