File tree Expand file tree Collapse file tree 2 files changed +16
-4
lines changed
Expand file tree Collapse file tree 2 files changed +16
-4
lines changed Original file line number Diff line number Diff line change 7474 return true ;
7575 }
7676
77- generateName ( tip ) {
77+ generateName ( tip , prefix ) {
78+ if ( ! prefix ) {
79+ prefix = '' ;
80+ }
7881 do {
7982 tip = utility . generateNextName ( tip ) ;
80- } while ( ! this . passAsUnique ( tip ) ) ;
81- return tip ;
83+ } while ( ! this . passAsUnique ( prefix + tip ) ) ;
84+ return prefix + tip ;
8285 }
8386 }
8487
8588 const run = ( scope , options ) => {
8689 let generator = new NameGenerator ( scope , options ) ;
90+ let prefix = options . renamePrefix ;
8791
8892 const shouldRename = options && options . shouldRename || ( ) => true ;
8993
114118 continue ;
115119 }
116120
117- name = generator . generateName ( name ) ;
121+ name = generator . generateName ( name , prefix ) ;
118122
119123 for ( let def of variable . identifiers ) {
120124 // change definition's name
Original file line number Diff line number Diff line change @@ -184,3 +184,11 @@ describe 'mangle:', ->
184184 return id != ' name'
185185
186186 expect (result .body [0 ].expression .id .name ).to .equal ' name'
187+
188+ describe ' `renamePrefix` option:' , ->
189+ program = esprima .parse ' (function name() { var i = 42; });'
190+
191+ it ' prefixes identifier with the given value' , ->
192+ result = esshorten .mangle program,
193+ renamePrefix : ' foo_'
194+ expect (result .body [0 ].expression .id .name .indexOf (' foo_' )).to .equal 0
You can’t perform that action at this time.
0 commit comments