diff --git a/lib/MemberBuilder.js b/lib/MemberBuilder.js index 07c8147..b9012be 100644 --- a/lib/MemberBuilder.js +++ b/lib/MemberBuilder.js @@ -297,35 +297,39 @@ exports.buildGetterSetter = function( */ function getMemberVisibility( members, keywords, name ) { - var viserr = function() - { - throw TypeError( - "Only one access modifier may be used for definition of '" + - name + "'" - ); - } - // there's cleaner ways of doing this, but consider it loop unrolling for // performance if ( keywords[ 'private' ] ) { - ( keywords[ 'public' ] || keywords[ 'protected' ] ) && viserr(); + ( keywords[ 'public' ] || keywords[ 'protected' ] ) + && viserr( name ); return members[ 'private' ]; } else if ( keywords[ 'protected' ] ) { - ( keywords[ 'public' ] || keywords[ 'private' ] ) && viserr(); + ( keywords[ 'public' ] || keywords[ 'private' ] ) + && viserr( name ); return members[ 'protected' ]; } else { // public keyword is the default, so explicitly specifying it is only // for clarity - ( keywords[ 'private' ] || keywords[ 'protected' ] ) && viserr(); + ( keywords[ 'private' ] || keywords[ 'protected' ] ) + && viserr( name ); return members[ 'public' ]; } } +function viserr( name ) +{ + throw TypeError( + "Only one access modifier may be used for definition of '" + + name + "'" + ); +} + + /** * Scan each level of visibility for the requested member