示例#1
0
	QNameClass::QNameClass(VTable* cvtable)
		: ClassClosure(cvtable)
	{
		AvmAssert(traits()->getSizeOfInstance() == sizeof(QNameClass));

		createVanillaPrototype();

		AvmCore* core = this->core();
		kUri = core->internConstantStringLatin1("uri")->atom();
		kLocalName = core->internConstantStringLatin1("localName")->atom();
	}
示例#2
0
	RegExpClass::RegExpClass(VTable* cvtable)
		: ClassClosure(cvtable)
	{
		AvmAssert(traits()->getSizeOfInstance() == sizeof(RegExpClass));

		AvmCore* core = this->core();

		ScriptObject* object_prototype = toplevel()->objectClass->prototype;
		prototype = new (core->GetGC(), ivtable()->getExtraSize()) RegExpObject(this,object_prototype);

		kindex = core->internConstantStringLatin1("index");
		kinput = core->internConstantStringLatin1("input");
	}
示例#3
0
	XMLClass::XMLClass(VTable* cvtable)
		: ClassClosure(cvtable)
	{
		AvmAssert(traits()->getSizeOfInstance() == sizeof(XMLClass));

		AvmCore* core = this->core();

		createVanillaPrototype();

		// These are static objects on the XML type
		// E4X: The XML constructor has the following properties
		// XML.ignoreComments
		// XML.ignoreProcessingInstructions
		// XML.ignoreWhitespace
		// XML.prettyPrinting
		// XML.prettyIndent
		m_flags = kFlagIgnoreComments | kFlagIgnoreProcessingInstructions | kFlagIgnoreWhitespace | kFlagPrettyPrinting;
		m_prettyIndent = 2;

		kAttribute = core->internConstantStringLatin1("attribute");
		kComment = core->internConstantStringLatin1("comment");
		kProcessingInstruction = core->internConstantStringLatin1("processing-instruction");
		kElement = core->internConstantStringLatin1("element");
		kText = core->internConstantStringLatin1("text");

		kColon = core->internConstantStringLatin1(":");
		kXml = core->internConstantStringLatin1("xml");

		// for notifications
		kAttrAdded = core->internConstantStringLatin1("attributeAdded");
		kAttrRemoved = core->internConstantStringLatin1("attributeRemoved");
		kAttrChanged = core->internConstantStringLatin1("attributeChanged");
		kNodeAdded = core->internConstantStringLatin1("nodeAdded");
		kNodeRemoved = core->internConstantStringLatin1("nodeRemoved");
		kNodeChanged = core->internConstantStringLatin1("nodeChanged");
		kNamespaceAdded = core->internConstantStringLatin1("namespaceAdded");
		kNamespaceRemoved = core->internConstantStringLatin1("namespaceRemoved");
		kNamespaceSet = core->internConstantStringLatin1("namespaceSet");
		kNameSet = core->internConstantStringLatin1("nameSet");
		kTextSet = core->internConstantStringLatin1("textSet");

		toplevel()->_builtinClasses[avmplus::NativeID::abcclass_XML]=this;
		// XML.settings
		// XML.setSettings ([settings])
		// XML.defaultSettings()
	}