index.js
function flip(input){
		input = input.reverse();
		
		// Flip any options back into the right order
		for(let i = 0, l = input.length; i < l; ++i){
			const arg = input[i];
			const opt = shortNames[arg] || longNames[arg];
			
			if(opt){
				const from    = Math.max(0, i - opt.arity);
				const to      = i + 1;
				const extract = input.slice(from, to).reverse();
				input.splice(from, extract.length, ...extract);
			}
		}
		
		return input;
	}
function flip(input){
		input = input.reverse();
		
		// Flip any options back into the right order
		for(let i = 0, l = input.length; i < l; ++i){
			const arg = input[i];
			const opt = shortNames[arg] || longNames[arg];
			
			if(opt){
				const from    = Math.max(0, i - opt.arity);
				const to      = i + 1;
				const extract = input.slice(from, to).reverse();
				input.splice(from, extract.length, ...extract);
			}
		}
		
		return input;
	}
function flip ( input ) { input = input . reverse ( ) ; // Flip any options back into the right order for ( let i = 0 , l = input . length ; i < l ; ++ i ) { const arg = input [ i ] ; const opt = shortNames [ arg ] || longNames [ arg ] ; if ( opt ) { const from = Math . max ( 0 , i - opt . arity ) ; const to = i + 1 ; const extract = input . slice ( from , to ) . reverse ( ) ; input . splice ( from , extract . length , ... extract ) ; } } return input ; }
Reverse the order of an argument list, keeping options and their parameter lists intact
Reverse the order of an argument list keeping options and their parameter lists intact