PUBLIC EjsXML *ejsCreateXMLList(Ejs *ejs, EjsXML *targetObject, EjsName targetProperty) { EjsXML *list; if ((list = (EjsXML*) ejsAlloc(ejs, ESV(XMLList), 0)) == NULL) { return 0; } list->kind = EJS_XML_LIST; list->elements = mprCreateList(-1, 0); list->targetObject = targetObject; if (targetProperty.name) { list->targetProperty.name = targetProperty.name; } return list; }
PUBLIC EjsXML *ejsCreateXML(Ejs *ejs, int kind, EjsName qname, EjsXML *parent, EjsString *value) { EjsXML *xml; if ((xml = (EjsXML*) ejsAlloc(ejs, ESV(XML), 0)) == NULL) { return 0; } if (qname.name) { xml->qname = qname; } xml->kind = kind; xml->parent = parent; if (value) { xml->value = value; } return xml; }
/* Create a new Shape instance. Use by the VM to create instances. @param ejs VM handle. @param type Shape type class object from which to create an instance. @param size Number of extra slots to allocate (ignored). */ Shape *create(Ejs *ejs, EjsType *type, int size) { return ejsAlloc(ejs, type, 0); }