widl-nan
Version:
Auto generate native C++ addon source code by parsing Web IDL definition
105 lines (93 loc) • 2.03 kB
Plain Text
{{
var getAllPropertyMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.type === 'attribute' /*&& !m.stringifier*/) {
arr.push(m);
}
});
return arr;
};
var getStaticPropertyMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.type === 'attribute' && m.static /*&& !m.stringifier*/) {
arr.push(m);
}
});
return arr;
};
var getNonStaticPropertyMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.type === 'attribute' && !m.static /*&& !m.stringifier*/) {
arr.push(m);
}
});
return arr;
};
var getAllMethodMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.type === 'operation' && !m.stringifier) {
arr.push(m);
}
});
return arr;
};
var getStaticMethodMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.type === 'operation' && m.static && !m.stringifier) {
arr.push(m);
}
});
return arr;
};
var getNonStaticMethodMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.type === 'operation' && !m.static && !m.stringifier) {
arr.push(m);
}
});
return arr;
};
var getStringifierMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.stringifier) {
arr.push(m);
}
});
return arr;
};
var getNonStringifierMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (!m.stringifier) {
arr.push(m);
}
});
return arr;
};
var getAllMembersExceptStringifierMethod = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.type === 'operation' && m.stringifier) {
} else {
arr.push(m);
}
});
return arr;
};
var getAllConstMembers = function(classDef) {
var arr = [];
classDef.members.forEach(m => {
if (m.type === 'const') {
arr.push(m);
}
});
return arr;
};
}}