rev 731 - trunk/src

SVN User <[email protected]> Tue, 13 Jul 2004 00:20:26 -0400
Newsgroups gmane.comp.lang.prothon.cvs
Message-ID <[email protected]>
Author: mark
Date: 2004-07-13 00:20:23 -0400 (Tue, 13 Jul 2004)
New Revision: 731

Modified:
   trunk/src/builtins-core.c
Log:
added Object.getAttr()

Modified: trunk/src/builtins-core.c
===================================================================
--- trunk/src/builtins-core.c	2004-07-13 04:00:51 UTC (rev 730)
+++ trunk/src/builtins-core.c	2004-07-13 04:20:23 UTC (rev 731)
@@ -212,6 +212,18 @@
 	return copy;
 }
 
+DEF(Object, getAttr, FPARM2(name, OBJ(NODEF), super, OBJ(NONE))) {
+	obj_p res, super, p_proto = NULL;
+	char* name;
+	STRING_PARAM(1, name);
+	super = parms[3];
+	if (super == OBJ(NONE)) super = NULL;
+	res = get_proto_attr(ist, self, sym(ist, name), &p_proto, super);
+	if (!res) return OBJ(NONE);
+	if (!p_proto) p_proto = OBJ(NONE);
+	return p_proto;
+}
+
 DEF(Object, hasProto_QUES, FORM_RPARAM) {
 	if (has_proto(ist, self, parms[1]))
 		return OBJ(PR_TRUE);
@@ -1260,6 +1272,7 @@
 	MODULE_ADD_SYM(Object, debug_);
 	MODULE_ADD_SYM(Object, newObject);
 	MODULE_ADD_SYM(Object, copy);
+	MODULE_ADD_SYM(Object, getAttr);
 	MODULE_ADD_SYM(Object, setReadAccess);
 	MODULE_ADD_SYM(Object, readAccess);
 	MODULE_ADD_SYM(Object, readAccessStr);