X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=xs-src%2FMouseAttribute.xs;h=3e4ef8d3a6ee4e7ab1e90c0c11ada000e019c12b;hb=fc7e5b5ffe3bc0ff6c87d8e58cab70582161aaf7;hp=6958375475dd1aa0e0432f52d23f58e425e62b82;hpb=beb51b30c36db012d0e8c7fdca87e44213ca81f5;p=gitmo%2FMouse.git diff --git a/xs-src/MouseAttribute.xs b/xs-src/MouseAttribute.xs index 6958375..3e4ef8d 100644 --- a/xs-src/MouseAttribute.xs +++ b/xs-src/MouseAttribute.xs @@ -15,7 +15,7 @@ mouse_build_xa(pTHX_ SV* const attr) { ENTER; SAVETMPS; - xa = newAV(); + xa = newAV(); mg = sv_magicext(SvRV(attr), (SV*)xa, PERL_MAGIC_ext, &mouse_xa_vtbl, NULL, 0); SvREFCNT_dec(xa); /* refcnt++ in sv_magicext */ @@ -184,6 +184,7 @@ mouse_xa_set_default(pTHX_ AV* const xa, SV* const object) { return value; } +/* checks $isa->does($does) */ static void mouse_check_isa_does_does(pTHX_ SV* const klass, SV* const name, SV* const isa, SV* const does){ STRLEN len; @@ -271,6 +272,7 @@ void _process_options(SV* klass, SV* name, HV* args) CODE: { + /* TODO: initialize 'xa' here */ SV** svp; SV* tc = NULL; @@ -319,7 +321,7 @@ CODE: "without a default, builder, or an init_arg", name); } - /* taken from Mouse::Meta::Attribute->new and ->_process_args */ + /* taken from Mouse::Meta::Attribute->new and ->_process_args */ svp = hv_fetchs(args, "is", FALSE); if(svp){ @@ -340,7 +342,7 @@ CODE: sv_setsv(*svp, name); } else if(strEQ(is, "bare")){ - /* do nothing, but don't complain (later) about missing methods */ + /* do nothing, but might complain later about missing methods */ } else{ mouse_throw_error(klass, NULL,