code: function jsify(arg) {
          if (_.isArray(arg)) {
              return _.map(arg, jsify);
          }
          else if (!_.isObject(arg)) {
              return arg;
          }
          else if (Tinkerpop.isLongValue(arg)) {
              // Represent longValue_t as string
              return arg.longValue;
          }
          else if (isType(arg, 'java.util.List')) {
              return _jsifyCollection(arg);
          }
          else if (isType(arg, 'java.util.Map')) {
              return _jsifyMap(arg);
          }
          else if (isType(arg, 'java.util.Map$Entry')) {
              return _jsifyMapEntry(arg);
          }
          else if (isType(arg, 'org.apache.tinkerpop.gremlin.process.traversal.step.util.BulkSet')) {
              // BulkSet is used to hold groupCount result, so it is given special treatment.
              return _jsifyBulkSet(arg);
          }
          else if (isType(arg, 'java.util.Set')) {
              return _jsifyCollection(arg);
          }
          else if (isType(arg, 'org.apache.tinkerpop.gremlin.process.traversal.Path')) {
              return _jsifyPath(arg);
          }
          else {
              return arg;
          }
      }
docs: ### `jsify(arg: any)` Convert certain Java containers into JavaScript equivalents: - List: any[] - Set: any[] - Map: any - Map$Entry: MapEntry - BulkSet: BulkSetElement[] - Path: PathElement[]