Added getter/setter keywords to propParse
parent
5a3b401647
commit
2a54662716
|
@ -229,8 +229,8 @@ exports.propParse = function( data, options )
|
||||||
// getter/setter
|
// getter/setter
|
||||||
if ( getter || setter )
|
if ( getter || setter )
|
||||||
{
|
{
|
||||||
callbackGetter.call( callbackGetter, name, getter );
|
callbackGetter.call( callbackGetter, name, getter, keywords );
|
||||||
callbackSetter.call( callbackSetter, name, setter );
|
callbackSetter.call( callbackSetter, name, setter, keywords );
|
||||||
}
|
}
|
||||||
// method
|
// method
|
||||||
else if ( value instanceof Function )
|
else if ( value instanceof Function )
|
||||||
|
|
|
@ -170,5 +170,43 @@ var common = require( './common' ),
|
||||||
"interpretation (" + prop + ")"
|
"interpretation (" + prop + ")"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// for browsers that support it
|
||||||
|
if ( Object.prototype.__defineGetter__ !== undefined )
|
||||||
|
{
|
||||||
|
data = {};
|
||||||
|
parsed_keywords = {};
|
||||||
|
|
||||||
|
// to prevent syntax errors for environments that don't support
|
||||||
|
// getters/setters in object notation
|
||||||
|
data.__defineGetter__( 'public foo', function() {} );
|
||||||
|
data.__defineSetter__( 'public foo', function() {} );
|
||||||
|
|
||||||
|
|
||||||
|
util.propParse( data, {
|
||||||
|
getter: function( name, value, keywords )
|
||||||
|
{
|
||||||
|
parsed_keywords[ name + 'g' ] = keywords;
|
||||||
|
},
|
||||||
|
|
||||||
|
setter: function( name, value, keywords )
|
||||||
|
{
|
||||||
|
parsed_keywords[ name + 's' ] = keywords;
|
||||||
|
},
|
||||||
|
} );
|
||||||
|
|
||||||
|
assert.deepEqual(
|
||||||
|
parsed_keywords.foog,
|
||||||
|
{ 'public': true },
|
||||||
|
"Getter keywords are properly recognized and available"
|
||||||
|
);
|
||||||
|
|
||||||
|
assert.deepEqual(
|
||||||
|
parsed_keywords.foos,
|
||||||
|
{ 'public': true },
|
||||||
|
"Setter keywords are properly recognized and available"
|
||||||
|
);
|
||||||
|
}
|
||||||
} )();
|
} )();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue