Make Test class static
This commit is contained in:
parent
f222bb92af
commit
e288f4e098
1 changed files with 22 additions and 22 deletions
|
|
@ -7,30 +7,30 @@
|
|||
static struct Object* static_method(struct Object* self);
|
||||
static struct Object* instance_method(struct Object* self);
|
||||
|
||||
struct Method Test_meta_methods[] = {
|
||||
{ .sel = "staticMethod", .impl = static_method },
|
||||
};
|
||||
struct Class TestMetaClass = {
|
||||
.class = &TestMetaClass,
|
||||
.name = "Test(meta)",
|
||||
.super = &MObjectMetaClass,
|
||||
.methods = Test_meta_methods,
|
||||
.methods_count = sizeof(Test_meta_methods) / sizeof(struct Method),
|
||||
};
|
||||
|
||||
struct Method Test_methods[] = {
|
||||
{ .sel = "instanceMethod", .impl = instance_method },
|
||||
};
|
||||
struct Class Test = {
|
||||
.class = &TestMetaClass,
|
||||
.name = "Test",
|
||||
.super = &MObject,
|
||||
.methods = Test_methods,
|
||||
.methods_count = sizeof(Test_methods) / sizeof(struct Method),
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
struct Method Test_meta_methods[] = {
|
||||
{ .sel = "staticMethod", .impl = static_method },
|
||||
};
|
||||
struct Class TestMetaClass = {
|
||||
.class = &TestMetaClass,
|
||||
.name = "Test(meta)",
|
||||
.super = &MObjectMetaClass,
|
||||
.methods = Test_meta_methods,
|
||||
.methods_count = sizeof(Test_meta_methods) / sizeof(struct Method),
|
||||
};
|
||||
|
||||
struct Method Test_methods[] = {
|
||||
{ .sel = "instanceMethod", .impl = instance_method },
|
||||
};
|
||||
struct Class Test = {
|
||||
.class = &TestMetaClass,
|
||||
.name = "Test",
|
||||
.super = &MObject,
|
||||
.methods = Test_methods,
|
||||
.methods_count = sizeof(Test_methods) / sizeof(struct Method),
|
||||
};
|
||||
|
||||
msg_send((struct Object*)&Test, "staticMethod");
|
||||
|
||||
struct Object* obj = msg_send((struct Object*)&Test, "alloc");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue