Lines Matching refs:members
24 * { return { type: "interface", name: name, inheritance: herit, members: mem, extAttrs: extAttrs }; }
36 * The members and methods of the classes defined by this file are all at least
161 this.members = {};
165 * exception names, and are expected to also exist as keys in this.members
168 * run by calling this.members[name].test_object(obj) for each obj in
212 if ("members" in parsed_idls[i]) {
213 for (var j = 0; j < parsed_idls[i].members.length; j++) {
214 parsed_idls[i].members[j].untested = true;
237 Object.values(this.members).forEach(v => {
249 Object.entries(this.members).forEach(([k, v]) => {
258 // Add the attribute idlTypes of all the nested members of idls.
261 if (parsed.members) {
262 for (const attr of Object.values(parsed.members).filter(m => m.type === 'attribute')) {
264 // Check for generic members (e.g. FrozenArray<MyType>)
272 if (parsed.base in this.members) {
273 attrDeps([this.members[parsed.base]]).forEach(dep => deps.add(dep));
279 const testedMembers = Object.values(this.members).filter(m => !m.untested && m.members);
282 const testedPartials = this.partials.filter(m => !m.untested && m.members);
296 return name in this.members
315 if (name && !(name in this.members)) {
337 // members) is being tested.
339 || inheriting in this.members && !this.members[inheriting].untested
384 * .members) so that they'll be skipped by test() -- they'll only be
388 * arrays. If only is given then only members, partials and interface
435 if (parsed_idl.name in this.members)
443 this.members[parsed_idl.name] =
448 this.members[parsed_idl.name] =
455 this.members[parsed_idl.name] = new IdlDictionary(parsed_idl);
459 this.members[parsed_idl.name] = new IdlTypedef(parsed_idl);
463 this.members[parsed_idl.name] = new IdlCallback(parsed_idl);
467 this.members[parsed_idl.name] = new IdlEnum(parsed_idl);
471 this.members[parsed_idl.name] =
476 this.members[parsed_idl.name] = new IdlNamespace(parsed_idl);
504 this.members[name].prevent_multiple_testing = true;
576 var thing = this.members[idlType];
584 // dictionaries where all of their members are JSON types
588 for (const m of dict.members) {
605 var mixin = this.members[id];
614 base = this.members[thing.base];
720 for (const member of Object.values(this.members).filter(m => m.base)) {
723 if (!(rhs in this.members)) throw new IdlHarnessError(`${lhs} inherits ${rhs}, but ${rhs} is undefined.`);
724 const lhs_is_interface = this.members[lhs] instanceof IdlInterface;
725 const rhs_is_interface = this.members[rhs] instanceof IdlInterface;
734 Object.getOwnPropertyNames(this.members).forEach(function(memberName) {
735 var member = this.members[memberName];
746 for (var name in this.members)
748 this.members[name].test();
757 if (!this.members[name] || !(this.members[name] instanceof IdlInterface)) {
760 this.members[name].test_object(str);
771 const originalExists = parsed_idl.name in this.members
772 && (this.members[parsed_idl.name] instanceof IdlInterface
773 || this.members[parsed_idl.name] instanceof IdlDictionary
774 || this.members[parsed_idl.name] instanceof IdlNamespace);
799 expected.prototype.isPrototypeOf(this.members[parsed_idl.name]),
811 // Exposed on a partial is the equivalent of having the same Exposed on all nested members.
819 const memberExposure = exposure_set(this.members[parsed_idl.name]);
835 parsed_idl.members.forEach(function (member) {
846 this.members[parsed_idl.name].extAttrs.push(extAttr);
849 if (parsed_idl.members.length) {
851 var clash = parsed_idl.members.find(function(member) {
852 return this.members[parsed_idl.name].members.find(function(m) {
856 parsed_idl.members.forEach(function(member)
858 this.members[parsed_idl.name].members.push(new IdlInterfaceMember(member));
875 if (!(lhs in this.members)) throw errStr + lhs + " is undefined.";
876 if (!(this.members[lhs] instanceof IdlInterface)) throw errStr + lhs + " is not an interface.";
877 if (!(rhs in this.members)) throw errStr + rhs + " is undefined.";
878 if (!(this.members[rhs] instanceof IdlInterface)) throw errStr + rhs + " is not an interface.";
880 if (this.members[rhs].members.length) {
882 var clash = this.members[rhs].members.find(function(member) {
883 return this.members[lhs].members.find(function(m) {
887 this.members[rhs].members.forEach(function(member) {
889 this.members[lhs].members.every(m => !this.are_duplicate_members(m, member)),
891 this.members[lhs].members.push(new IdlInterfaceMember(member));
914 if (type.idlType in this.members
915 && this.members[type.idlType] instanceof IdlTypedef) {
916 this.assert_type_is(value, this.members[type.idlType].idlType);
1110 if (!(type in this.members))
1116 if (this.members[type] instanceof IdlInterface)
1125 && !this.members[type].has_extended_attribute("LegacyNoInterfaceObject")
1131 else if (this.members[type] instanceof IdlEnum)
1135 else if (this.members[type] instanceof IdlDictionary)
1139 else if (this.members[type] instanceof IdlCallback)
1163 * such as interfaces, exceptions, and members.
1188 this.members = obj.members;
1218 * interface prototype object. Tests on members are controlled by .untested
1227 this.members = obj.members.map(function(m){return new IdlInterfaceMember(m); });
1229 this.members
1256 return this.members.some(function(member) {
1263 return this.members.filter(function(member) {
1331 return this.members.some(function(m) {
1337 return this.members.some(function(m) {
1365 const base = this.array.members[idl_interface.base];
1394 for (const m of I.members) {
1435 // Then test things to do with its members (constants, fields, attributes,
1437 // members might themselves be marked as .untested. This might happen to
1440 // members will be marked as untested, but the members added by the partial
1447 return this.members
1513 var inherited_interface = this.array.members[this.base];
1828 var parent = this.array.members[inherit_interface];
2360 const ctors = this.members.filter(function(m) {
2659 for (var i = 0; i < this.members.length; i++)
2661 var member = this.members[i];
2759 if (!(current_interface.name in this.array.members))
2768 current_interface = this.array.members[current_interface.base];
2774 // Only the object itself, not its members, are tested here, so if the
2835 // TODO: Indexed and named properties, more checks on interface members
2841 for (var i = 0; i < this.members.length; i++)
2843 var member = this.members[i];
2960 var minLength = minOverloadLength(this.members.filter(function(m) {
2989 if (this.members.some(function(member) { return member.special === "stringifier"; })) {
2993 this.array.members[this.base].has_stringifier()) {
3283 this.members = obj.members.map(m => new IdlInterfaceMember(m));
3311 minOverloadLength(this.members.filter(function(m) {
3354 assert_equals(desc.set, undefined, "setter must be undefined for namespace members");
3429 for (const v of Object.values(this.members)) {