From d1bd05be7a0043782521ea5dc1e063f61ea36e2a Mon Sep 17 00:00:00 2001 From: Matthias Kramm Date: Tue, 3 Feb 2009 19:48:00 +0100 Subject: [PATCH] new function abc_method_init() --- lib/as3/abc.c | 9 ++++++--- lib/as3/abc.h | 1 + 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/as3/abc.c b/lib/as3/abc.c index 4375300..30e5616 100644 --- a/lib/as3/abc.c +++ b/lib/as3/abc.c @@ -157,10 +157,9 @@ void abc_class_add_interface(abc_class_t*c, multiname_t*interface) list_append(c->interfaces, multiname_clone(interface)); } -abc_method_t* abc_method_new(abc_file_t*file, multiname_t*returntype, char body) +void abc_method_init(abc_method_t*m, abc_file_t*file, multiname_t*returntype, char body) { /* construct method object */ - NEW(abc_method_t,m); m->index = array_length(file->methods); array_append(file->methods, NO_KEY, m); m->return_type = returntype; @@ -178,7 +177,11 @@ abc_method_t* abc_method_new(abc_file_t*file, multiname_t*returntype, char body) m->body = c; c->method = m; } - +} +abc_method_t* abc_method_new(abc_file_t*file, multiname_t*returntype, char body) +{ + NEW(abc_method_t,m); + abc_method_init(m, file, returntype, body); return m; } diff --git a/lib/as3/abc.h b/lib/as3/abc.h index 8e7cf81..9586dfe 100644 --- a/lib/as3/abc.h +++ b/lib/as3/abc.h @@ -138,6 +138,7 @@ struct _abc_class { int index; //filled in during writing }; +void abc_method_init(abc_method_t*m, abc_file_t*file, multiname_t*returntype, char body); abc_method_t* abc_method_new(abc_file_t*file, multiname_t*returntype, char body); abc_class_t* abc_class_new(abc_file_t*file, multiname_t*classname, multiname_t*superclass); -- 1.7.10.4