code: function(line, index, lines) {
          if (insideString('|>', line)) return line;
  
          // ^\s?             // leading spaces
          // (\|\>\s*)        // |> pipe operator inc trailing spaces
          // ([\.\w_]+\s*)    // function/method name inc trailing spaces
          // (.*)             // additional (optional) params
          //
          // $0 `|> my_func take 99`
          // $1 `|>`
          // $2 `my_func`
          // $3 `99`
          //
          var regex = /^(\|\>\s*)([\.\w_]+\s*)(.*)$/;
  
          return line.replace(regex, function($0, $1, $2, $3) {
              var comma;
              var newLine;
              var hasLambda = $3.match(/=>/);
  
              // strip parens
              if (!hasLambda) {
                $3 = $3.replace(/^\(|\)$/g, '');
              }
  
              comma = $3 ? ', ' : '';
  
              newLine = '.pipesCall(' + $2.trim() + comma + $3 + ')';
  
              // if next line doesnt have a pipe operator
              if (!lines[index + 1].match(/^\s*\|\>/)) {
                  newLine = newLine.trimRight() + '.value();';
              }
              return newLine;
          });
      }
docs: Transforms pipe |> operator into a lo-dash call (mixed-in) returns String a -> String b