function OneOf(name, fieldNames, options, comment) {
        if (!Array.isArray(fieldNames)) {
          options = fieldNames;
          fieldNames = undefined;
        }
        ReflectionObject.call(this, name, options);

        /* istanbul ignore if */
        if (!(fieldNames === undefined || Array.isArray(fieldNames)))
          throw TypeError("fieldNames must be an Array");

        /**
         * Field names that belong to this oneof.
         * @type {string[]}
         */
        this.oneof = fieldNames || []; // toJSON, marker

        /**
         * Fields that belong to this oneof as an array for iteration.
         * @type {Field[]}
         * @readonly
         */
        this.fieldsArray = []; // declared readonly for conformance, possibly not yet added to parent

        /**
         * Comment for this field.
         * @type {string|null}
         */
        this.comment = comment;
      }
/**
       * Constructs a new oneof instance.
       * @classdesc Reflected oneof.
       * @extends ReflectionObject
       * @constructor
       * @param {string} name Oneof name
       * @param {string[]|Object.<string,*>} [fieldNames] Field names
       * @param {Object.<string,*>} [options] Declared options
       * @param {string} [comment] Comment associated with this field
       */
Constructs a new oneof instance.
@classdesc Reflected oneof.
Constructs a new oneof instance . @classdesc Reflected oneof .
function OneOf(name, fieldNames, options, comment) {
        if (!Array.isArray(fieldNames)) {
          options = fieldNames;
          fieldNames = undefined;
        }
        ReflectionObject.call(this, name, options);
        if (!(fieldNames === undefined || Array.isArray(fieldNames)))
          throw TypeError("fieldNames must be an Array");
        this.oneof = fieldNames || []; 
        this.fieldsArray = []; 
        this.comment = comment;
      }
function OneOf ( name , fieldNames , options , comment ) { if ( ! Array . isArray ( fieldNames ) ) { options = fieldNames ; fieldNames = undefined ; } ReflectionObject . call ( this , name , options ) ; if ( ! ( fieldNames === undefined || Array . isArray ( fieldNames ) ) ) throw TypeError ( "fieldNames must be an Array" ) ; this . oneof = fieldNames || [ ] ; this . fieldsArray = [ ] ; this . comment = comment ; }
Constructs a new oneof instance.
Constructs a new oneof instance .
/* istanbul ignore if */ /**
         * Field names that belong to this oneof.
         * @type {string[]}
         */ // toJSON, marker /**
         * Fields that belong to this oneof as an array for iteration.
         * @type {Field[]}
         * @readonly
         */ // declared readonly for conformance, possibly not yet added to parent /**
         * Comment for this field.
         * @type {string|null}
         */