[#25] Began refactoring getter/setter building into a single method (util.propParse)
I'm unsure as to why I originally placed them in separate methods. propParse() will always find a getter at the same time it finds a setter, and vice versa, should they both have been defined on the object.closure/master
parent
2ba8e2c8f0
commit
02cd52cfb7
|
@ -465,21 +465,16 @@ exports.prototype.buildMembers = function buildMembers(
|
|||
);
|
||||
},
|
||||
|
||||
getter: function( name, value, keywords )
|
||||
getset: function( name, get, set, keywords )
|
||||
{
|
||||
var dest = ( keywordStatic( keywords ) ) ? smethods : members;
|
||||
|
||||
_self._memberBuilder.buildGetter(
|
||||
dest, null, name, value, keywords, base
|
||||
dest, null, name, get, keywords, base
|
||||
);
|
||||
},
|
||||
|
||||
setter: function( name, value, keywords )
|
||||
{
|
||||
var dest = ( keywordStatic( keywords ) ) ? smethods : members;
|
||||
|
||||
_self._memberBuilder.buildSetter(
|
||||
dest, null, name, value, keywords, base
|
||||
dest, null, name, set, keywords, base
|
||||
);
|
||||
},
|
||||
|
||||
|
|
|
@ -209,19 +209,11 @@ var extend = ( function( extending )
|
|||
);
|
||||
},
|
||||
|
||||
getter: function()
|
||||
getset: function()
|
||||
{
|
||||
throw TypeError(
|
||||
"Getter not permitter within definition of Interface '" +
|
||||
iname + "'"
|
||||
);
|
||||
},
|
||||
|
||||
setter: function()
|
||||
{
|
||||
throw TypeError(
|
||||
"Setter within definition of Interface '" +
|
||||
iname + "'"
|
||||
"Getters/setters are not permitter within definition " +
|
||||
"of Interface '" + iname + "'"
|
||||
);
|
||||
},
|
||||
|
||||
|
|
|
@ -261,8 +261,7 @@ exports.propParse = function( data, options )
|
|||
callbackEach = options.each || undefined,
|
||||
callbackProp = options.property || fvoid,
|
||||
callbackMethod = options.method || fvoid,
|
||||
callbackGetter = options.getter || fvoid,
|
||||
callbackSetter = options.setter || fvoid,
|
||||
callbackGetSet = options.getset || fvoid,
|
||||
keywordParser = options.keywordParser || propParseKeywords,
|
||||
|
||||
hasOwn = Object.prototype.hasOwnProperty,
|
||||
|
@ -319,8 +318,9 @@ exports.propParse = function( data, options )
|
|||
// getter/setter
|
||||
if ( getter || setter )
|
||||
{
|
||||
callbackGetter.call( callbackGetter, name, getter, keywords );
|
||||
callbackSetter.call( callbackSetter, name, setter, keywords );
|
||||
callbackGetSet.call( callbackGetSet,
|
||||
name, getter, setter, keywords
|
||||
);
|
||||
}
|
||||
// method
|
||||
else if ( value instanceof Function )
|
||||
|
|
|
@ -203,9 +203,6 @@ var common = require( './common' ),
|
|||
{
|
||||
// cause the error
|
||||
tries[ i ]();
|
||||
|
||||
// we shouldn't get to this point...
|
||||
assert.fail( "Expected error. Something's wrong." );
|
||||
}
|
||||
catch ( e )
|
||||
{
|
||||
|
@ -215,7 +212,12 @@ var common = require( './common' ),
|
|||
null,
|
||||
"Error contains interface name when available (" + i + ")"
|
||||
);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
// we shouldn't get to this point...
|
||||
assert.fail( "Expected error. Something's wrong: " + i );
|
||||
}
|
||||
} )();
|
||||
|
||||
|
|
|
@ -190,14 +190,10 @@ var common = require( './common' ),
|
|||
|
||||
|
||||
util.propParse( data, {
|
||||
getter: function( name, value, keywords )
|
||||
getset: function( name, get, set, keywords )
|
||||
{
|
||||
parsed_keywords[ name + 'g' ] = keywords;
|
||||
},
|
||||
|
||||
setter: function( name, value, keywords )
|
||||
{
|
||||
parsed_keywords[ name + 's' ] = keywords;
|
||||
get && ( parsed_keywords[ name + 'g' ] = keywords );
|
||||
set && ( parsed_keywords[ name + 's' ] = keywords );
|
||||
},
|
||||
} );
|
||||
|
||||
|
|
|
@ -96,15 +96,11 @@ util.propParse( data, {
|
|||
to[ name ] = method;
|
||||
},
|
||||
|
||||
getter: function( name, func )
|
||||
getset: function( name, get, set )
|
||||
{
|
||||
getters[ name ] = func;
|
||||
getters[ name ] = get;
|
||||
setters[ name ] = set;
|
||||
},
|
||||
|
||||
setter: function( name, func )
|
||||
{
|
||||
setters[ name ] = func;
|
||||
}
|
||||
} );
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue