001    // Generated by the protocol buffer compiler.  DO NOT EDIT!
002    // source: core/descriptor.loader.java/src/jvm_package_table.proto
003    
004    package org.jetbrains.kotlin.serialization.jvm;
005    
006    public final class JvmPackageTable {
007      private JvmPackageTable() {}
008      public static void registerAllExtensions(
009          org.jetbrains.kotlin.protobuf.ExtensionRegistryLite registry) {
010      }
011      public interface PackageTableOrBuilder extends
012          // @@protoc_insertion_point(interface_extends:org.jetbrains.kotlin.serialization.jvm.PackageTable)
013          org.jetbrains.kotlin.protobuf.MessageLiteOrBuilder {
014    
015        /**
016         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
017         *
018         * <pre>
019         * Names of .class files for each package
020         * </pre>
021         */
022        java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> 
023            getPackagePartsList();
024        /**
025         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
026         *
027         * <pre>
028         * Names of .class files for each package
029         * </pre>
030         */
031        org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts getPackageParts(int index);
032        /**
033         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
034         *
035         * <pre>
036         * Names of .class files for each package
037         * </pre>
038         */
039        int getPackagePartsCount();
040    
041        /**
042         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
043         *
044         * <pre>
045         * Names of .kotlin_metadata files for each package
046         * </pre>
047         */
048        java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> 
049            getMetadataPartsList();
050        /**
051         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
052         *
053         * <pre>
054         * Names of .kotlin_metadata files for each package
055         * </pre>
056         */
057        org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts getMetadataParts(int index);
058        /**
059         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
060         *
061         * <pre>
062         * Names of .kotlin_metadata files for each package
063         * </pre>
064         */
065        int getMetadataPartsCount();
066      }
067      /**
068       * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.PackageTable}
069       */
070      public static final class PackageTable extends
071          org.jetbrains.kotlin.protobuf.GeneratedMessageLite implements
072          // @@protoc_insertion_point(message_implements:org.jetbrains.kotlin.serialization.jvm.PackageTable)
073          PackageTableOrBuilder {
074        // Use PackageTable.newBuilder() to construct.
075        private PackageTable(org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder builder) {
076          super(builder);
077          this.unknownFields = builder.getUnknownFields();
078        }
079        private PackageTable(boolean noInit) { this.unknownFields = org.jetbrains.kotlin.protobuf.ByteString.EMPTY;}
080    
081        private static final PackageTable defaultInstance;
082        public static PackageTable getDefaultInstance() {
083          return defaultInstance;
084        }
085    
086        public PackageTable getDefaultInstanceForType() {
087          return defaultInstance;
088        }
089    
090        private final org.jetbrains.kotlin.protobuf.ByteString unknownFields;
091        private PackageTable(
092            org.jetbrains.kotlin.protobuf.CodedInputStream input,
093            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
094            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
095          initFields();
096          int mutable_bitField0_ = 0;
097          org.jetbrains.kotlin.protobuf.ByteString.Output unknownFieldsOutput =
098              org.jetbrains.kotlin.protobuf.ByteString.newOutput();
099          org.jetbrains.kotlin.protobuf.CodedOutputStream unknownFieldsCodedOutput =
100              org.jetbrains.kotlin.protobuf.CodedOutputStream.newInstance(
101                  unknownFieldsOutput);
102          try {
103            boolean done = false;
104            while (!done) {
105              int tag = input.readTag();
106              switch (tag) {
107                case 0:
108                  done = true;
109                  break;
110                default: {
111                  if (!parseUnknownField(input, unknownFieldsCodedOutput,
112                                         extensionRegistry, tag)) {
113                    done = true;
114                  }
115                  break;
116                }
117                case 10: {
118                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
119                    packageParts_ = new java.util.ArrayList<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts>();
120                    mutable_bitField0_ |= 0x00000001;
121                  }
122                  packageParts_.add(input.readMessage(org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.PARSER, extensionRegistry));
123                  break;
124                }
125                case 18: {
126                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
127                    metadataParts_ = new java.util.ArrayList<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts>();
128                    mutable_bitField0_ |= 0x00000002;
129                  }
130                  metadataParts_.add(input.readMessage(org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.PARSER, extensionRegistry));
131                  break;
132                }
133              }
134            }
135          } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
136            throw e.setUnfinishedMessage(this);
137          } catch (java.io.IOException e) {
138            throw new org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException(
139                e.getMessage()).setUnfinishedMessage(this);
140          } finally {
141            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
142              packageParts_ = java.util.Collections.unmodifiableList(packageParts_);
143            }
144            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
145              metadataParts_ = java.util.Collections.unmodifiableList(metadataParts_);
146            }
147            try {
148              unknownFieldsCodedOutput.flush();
149            } catch (java.io.IOException e) {
150            // Should not happen
151            } finally {
152              unknownFields = unknownFieldsOutput.toByteString();
153            }
154            makeExtensionsImmutable();
155          }
156        }
157        public static org.jetbrains.kotlin.protobuf.Parser<PackageTable> PARSER =
158            new org.jetbrains.kotlin.protobuf.AbstractParser<PackageTable>() {
159          public PackageTable parsePartialFrom(
160              org.jetbrains.kotlin.protobuf.CodedInputStream input,
161              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
162              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
163            return new PackageTable(input, extensionRegistry);
164          }
165        };
166    
167        @java.lang.Override
168        public org.jetbrains.kotlin.protobuf.Parser<PackageTable> getParserForType() {
169          return PARSER;
170        }
171    
172        public static final int PACKAGE_PARTS_FIELD_NUMBER = 1;
173        private java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> packageParts_;
174        /**
175         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
176         *
177         * <pre>
178         * Names of .class files for each package
179         * </pre>
180         */
181        public java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> getPackagePartsList() {
182          return packageParts_;
183        }
184        /**
185         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
186         *
187         * <pre>
188         * Names of .class files for each package
189         * </pre>
190         */
191        public java.util.List<? extends org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackagePartsOrBuilder> 
192            getPackagePartsOrBuilderList() {
193          return packageParts_;
194        }
195        /**
196         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
197         *
198         * <pre>
199         * Names of .class files for each package
200         * </pre>
201         */
202        public int getPackagePartsCount() {
203          return packageParts_.size();
204        }
205        /**
206         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
207         *
208         * <pre>
209         * Names of .class files for each package
210         * </pre>
211         */
212        public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts getPackageParts(int index) {
213          return packageParts_.get(index);
214        }
215        /**
216         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
217         *
218         * <pre>
219         * Names of .class files for each package
220         * </pre>
221         */
222        public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackagePartsOrBuilder getPackagePartsOrBuilder(
223            int index) {
224          return packageParts_.get(index);
225        }
226    
227        public static final int METADATA_PARTS_FIELD_NUMBER = 2;
228        private java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> metadataParts_;
229        /**
230         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
231         *
232         * <pre>
233         * Names of .kotlin_metadata files for each package
234         * </pre>
235         */
236        public java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> getMetadataPartsList() {
237          return metadataParts_;
238        }
239        /**
240         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
241         *
242         * <pre>
243         * Names of .kotlin_metadata files for each package
244         * </pre>
245         */
246        public java.util.List<? extends org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackagePartsOrBuilder> 
247            getMetadataPartsOrBuilderList() {
248          return metadataParts_;
249        }
250        /**
251         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
252         *
253         * <pre>
254         * Names of .kotlin_metadata files for each package
255         * </pre>
256         */
257        public int getMetadataPartsCount() {
258          return metadataParts_.size();
259        }
260        /**
261         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
262         *
263         * <pre>
264         * Names of .kotlin_metadata files for each package
265         * </pre>
266         */
267        public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts getMetadataParts(int index) {
268          return metadataParts_.get(index);
269        }
270        /**
271         * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
272         *
273         * <pre>
274         * Names of .kotlin_metadata files for each package
275         * </pre>
276         */
277        public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackagePartsOrBuilder getMetadataPartsOrBuilder(
278            int index) {
279          return metadataParts_.get(index);
280        }
281    
282        private void initFields() {
283          packageParts_ = java.util.Collections.emptyList();
284          metadataParts_ = java.util.Collections.emptyList();
285        }
286        private byte memoizedIsInitialized = -1;
287        public final boolean isInitialized() {
288          byte isInitialized = memoizedIsInitialized;
289          if (isInitialized == 1) return true;
290          if (isInitialized == 0) return false;
291    
292          for (int i = 0; i < getPackagePartsCount(); i++) {
293            if (!getPackageParts(i).isInitialized()) {
294              memoizedIsInitialized = 0;
295              return false;
296            }
297          }
298          for (int i = 0; i < getMetadataPartsCount(); i++) {
299            if (!getMetadataParts(i).isInitialized()) {
300              memoizedIsInitialized = 0;
301              return false;
302            }
303          }
304          memoizedIsInitialized = 1;
305          return true;
306        }
307    
308        public void writeTo(org.jetbrains.kotlin.protobuf.CodedOutputStream output)
309                            throws java.io.IOException {
310          getSerializedSize();
311          for (int i = 0; i < packageParts_.size(); i++) {
312            output.writeMessage(1, packageParts_.get(i));
313          }
314          for (int i = 0; i < metadataParts_.size(); i++) {
315            output.writeMessage(2, metadataParts_.get(i));
316          }
317          output.writeRawBytes(unknownFields);
318        }
319    
320        private int memoizedSerializedSize = -1;
321        public int getSerializedSize() {
322          int size = memoizedSerializedSize;
323          if (size != -1) return size;
324    
325          size = 0;
326          for (int i = 0; i < packageParts_.size(); i++) {
327            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
328              .computeMessageSize(1, packageParts_.get(i));
329          }
330          for (int i = 0; i < metadataParts_.size(); i++) {
331            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
332              .computeMessageSize(2, metadataParts_.get(i));
333          }
334          size += unknownFields.size();
335          memoizedSerializedSize = size;
336          return size;
337        }
338    
339        private static final long serialVersionUID = 0L;
340        @java.lang.Override
341        protected java.lang.Object writeReplace()
342            throws java.io.ObjectStreamException {
343          return super.writeReplace();
344        }
345    
346        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseFrom(
347            org.jetbrains.kotlin.protobuf.ByteString data)
348            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
349          return PARSER.parseFrom(data);
350        }
351        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseFrom(
352            org.jetbrains.kotlin.protobuf.ByteString data,
353            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
354            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
355          return PARSER.parseFrom(data, extensionRegistry);
356        }
357        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseFrom(byte[] data)
358            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
359          return PARSER.parseFrom(data);
360        }
361        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseFrom(
362            byte[] data,
363            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
364            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
365          return PARSER.parseFrom(data, extensionRegistry);
366        }
367        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseFrom(java.io.InputStream input)
368            throws java.io.IOException {
369          return PARSER.parseFrom(input);
370        }
371        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseFrom(
372            java.io.InputStream input,
373            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
374            throws java.io.IOException {
375          return PARSER.parseFrom(input, extensionRegistry);
376        }
377        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseDelimitedFrom(java.io.InputStream input)
378            throws java.io.IOException {
379          return PARSER.parseDelimitedFrom(input);
380        }
381        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseDelimitedFrom(
382            java.io.InputStream input,
383            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
384            throws java.io.IOException {
385          return PARSER.parseDelimitedFrom(input, extensionRegistry);
386        }
387        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseFrom(
388            org.jetbrains.kotlin.protobuf.CodedInputStream input)
389            throws java.io.IOException {
390          return PARSER.parseFrom(input);
391        }
392        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parseFrom(
393            org.jetbrains.kotlin.protobuf.CodedInputStream input,
394            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
395            throws java.io.IOException {
396          return PARSER.parseFrom(input, extensionRegistry);
397        }
398    
399        public static Builder newBuilder() { return Builder.create(); }
400        public Builder newBuilderForType() { return newBuilder(); }
401        public static Builder newBuilder(org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable prototype) {
402          return newBuilder().mergeFrom(prototype);
403        }
404        public Builder toBuilder() { return newBuilder(this); }
405    
406        /**
407         * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.PackageTable}
408         */
409        public static final class Builder extends
410            org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder<
411              org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable, Builder>
412            implements
413            // @@protoc_insertion_point(builder_implements:org.jetbrains.kotlin.serialization.jvm.PackageTable)
414            org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTableOrBuilder {
415          // Construct using org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable.newBuilder()
416          private Builder() {
417            maybeForceBuilderInitialization();
418          }
419    
420          private void maybeForceBuilderInitialization() {
421          }
422          private static Builder create() {
423            return new Builder();
424          }
425    
426          public Builder clear() {
427            super.clear();
428            packageParts_ = java.util.Collections.emptyList();
429            bitField0_ = (bitField0_ & ~0x00000001);
430            metadataParts_ = java.util.Collections.emptyList();
431            bitField0_ = (bitField0_ & ~0x00000002);
432            return this;
433          }
434    
435          public Builder clone() {
436            return create().mergeFrom(buildPartial());
437          }
438    
439          public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable getDefaultInstanceForType() {
440            return org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable.getDefaultInstance();
441          }
442    
443          public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable build() {
444            org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable result = buildPartial();
445            if (!result.isInitialized()) {
446              throw newUninitializedMessageException(result);
447            }
448            return result;
449          }
450    
451          public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable buildPartial() {
452            org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable result = new org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable(this);
453            int from_bitField0_ = bitField0_;
454            if (((bitField0_ & 0x00000001) == 0x00000001)) {
455              packageParts_ = java.util.Collections.unmodifiableList(packageParts_);
456              bitField0_ = (bitField0_ & ~0x00000001);
457            }
458            result.packageParts_ = packageParts_;
459            if (((bitField0_ & 0x00000002) == 0x00000002)) {
460              metadataParts_ = java.util.Collections.unmodifiableList(metadataParts_);
461              bitField0_ = (bitField0_ & ~0x00000002);
462            }
463            result.metadataParts_ = metadataParts_;
464            return result;
465          }
466    
467          public Builder mergeFrom(org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable other) {
468            if (other == org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable.getDefaultInstance()) return this;
469            if (!other.packageParts_.isEmpty()) {
470              if (packageParts_.isEmpty()) {
471                packageParts_ = other.packageParts_;
472                bitField0_ = (bitField0_ & ~0x00000001);
473              } else {
474                ensurePackagePartsIsMutable();
475                packageParts_.addAll(other.packageParts_);
476              }
477              
478            }
479            if (!other.metadataParts_.isEmpty()) {
480              if (metadataParts_.isEmpty()) {
481                metadataParts_ = other.metadataParts_;
482                bitField0_ = (bitField0_ & ~0x00000002);
483              } else {
484                ensureMetadataPartsIsMutable();
485                metadataParts_.addAll(other.metadataParts_);
486              }
487              
488            }
489            setUnknownFields(
490                getUnknownFields().concat(other.unknownFields));
491            return this;
492          }
493    
494          public final boolean isInitialized() {
495            for (int i = 0; i < getPackagePartsCount(); i++) {
496              if (!getPackageParts(i).isInitialized()) {
497                
498                return false;
499              }
500            }
501            for (int i = 0; i < getMetadataPartsCount(); i++) {
502              if (!getMetadataParts(i).isInitialized()) {
503                
504                return false;
505              }
506            }
507            return true;
508          }
509    
510          public Builder mergeFrom(
511              org.jetbrains.kotlin.protobuf.CodedInputStream input,
512              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
513              throws java.io.IOException {
514            org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable parsedMessage = null;
515            try {
516              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
517            } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
518              parsedMessage = (org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageTable) e.getUnfinishedMessage();
519              throw e;
520            } finally {
521              if (parsedMessage != null) {
522                mergeFrom(parsedMessage);
523              }
524            }
525            return this;
526          }
527          private int bitField0_;
528    
529          private java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> packageParts_ =
530            java.util.Collections.emptyList();
531          private void ensurePackagePartsIsMutable() {
532            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
533              packageParts_ = new java.util.ArrayList<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts>(packageParts_);
534              bitField0_ |= 0x00000001;
535             }
536          }
537    
538          /**
539           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
540           *
541           * <pre>
542           * Names of .class files for each package
543           * </pre>
544           */
545          public java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> getPackagePartsList() {
546            return java.util.Collections.unmodifiableList(packageParts_);
547          }
548          /**
549           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
550           *
551           * <pre>
552           * Names of .class files for each package
553           * </pre>
554           */
555          public int getPackagePartsCount() {
556            return packageParts_.size();
557          }
558          /**
559           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
560           *
561           * <pre>
562           * Names of .class files for each package
563           * </pre>
564           */
565          public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts getPackageParts(int index) {
566            return packageParts_.get(index);
567          }
568          /**
569           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
570           *
571           * <pre>
572           * Names of .class files for each package
573           * </pre>
574           */
575          public Builder setPackageParts(
576              int index, org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts value) {
577            if (value == null) {
578              throw new NullPointerException();
579            }
580            ensurePackagePartsIsMutable();
581            packageParts_.set(index, value);
582    
583            return this;
584          }
585          /**
586           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
587           *
588           * <pre>
589           * Names of .class files for each package
590           * </pre>
591           */
592          public Builder setPackageParts(
593              int index, org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.Builder builderForValue) {
594            ensurePackagePartsIsMutable();
595            packageParts_.set(index, builderForValue.build());
596    
597            return this;
598          }
599          /**
600           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
601           *
602           * <pre>
603           * Names of .class files for each package
604           * </pre>
605           */
606          public Builder addPackageParts(org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts value) {
607            if (value == null) {
608              throw new NullPointerException();
609            }
610            ensurePackagePartsIsMutable();
611            packageParts_.add(value);
612    
613            return this;
614          }
615          /**
616           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
617           *
618           * <pre>
619           * Names of .class files for each package
620           * </pre>
621           */
622          public Builder addPackageParts(
623              int index, org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts value) {
624            if (value == null) {
625              throw new NullPointerException();
626            }
627            ensurePackagePartsIsMutable();
628            packageParts_.add(index, value);
629    
630            return this;
631          }
632          /**
633           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
634           *
635           * <pre>
636           * Names of .class files for each package
637           * </pre>
638           */
639          public Builder addPackageParts(
640              org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.Builder builderForValue) {
641            ensurePackagePartsIsMutable();
642            packageParts_.add(builderForValue.build());
643    
644            return this;
645          }
646          /**
647           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
648           *
649           * <pre>
650           * Names of .class files for each package
651           * </pre>
652           */
653          public Builder addPackageParts(
654              int index, org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.Builder builderForValue) {
655            ensurePackagePartsIsMutable();
656            packageParts_.add(index, builderForValue.build());
657    
658            return this;
659          }
660          /**
661           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
662           *
663           * <pre>
664           * Names of .class files for each package
665           * </pre>
666           */
667          public Builder addAllPackageParts(
668              java.lang.Iterable<? extends org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> values) {
669            ensurePackagePartsIsMutable();
670            org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
671                values, packageParts_);
672    
673            return this;
674          }
675          /**
676           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
677           *
678           * <pre>
679           * Names of .class files for each package
680           * </pre>
681           */
682          public Builder clearPackageParts() {
683            packageParts_ = java.util.Collections.emptyList();
684            bitField0_ = (bitField0_ & ~0x00000001);
685    
686            return this;
687          }
688          /**
689           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts package_parts = 1;</code>
690           *
691           * <pre>
692           * Names of .class files for each package
693           * </pre>
694           */
695          public Builder removePackageParts(int index) {
696            ensurePackagePartsIsMutable();
697            packageParts_.remove(index);
698    
699            return this;
700          }
701    
702          private java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> metadataParts_ =
703            java.util.Collections.emptyList();
704          private void ensureMetadataPartsIsMutable() {
705            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
706              metadataParts_ = new java.util.ArrayList<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts>(metadataParts_);
707              bitField0_ |= 0x00000002;
708             }
709          }
710    
711          /**
712           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
713           *
714           * <pre>
715           * Names of .kotlin_metadata files for each package
716           * </pre>
717           */
718          public java.util.List<org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> getMetadataPartsList() {
719            return java.util.Collections.unmodifiableList(metadataParts_);
720          }
721          /**
722           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
723           *
724           * <pre>
725           * Names of .kotlin_metadata files for each package
726           * </pre>
727           */
728          public int getMetadataPartsCount() {
729            return metadataParts_.size();
730          }
731          /**
732           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
733           *
734           * <pre>
735           * Names of .kotlin_metadata files for each package
736           * </pre>
737           */
738          public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts getMetadataParts(int index) {
739            return metadataParts_.get(index);
740          }
741          /**
742           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
743           *
744           * <pre>
745           * Names of .kotlin_metadata files for each package
746           * </pre>
747           */
748          public Builder setMetadataParts(
749              int index, org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts value) {
750            if (value == null) {
751              throw new NullPointerException();
752            }
753            ensureMetadataPartsIsMutable();
754            metadataParts_.set(index, value);
755    
756            return this;
757          }
758          /**
759           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
760           *
761           * <pre>
762           * Names of .kotlin_metadata files for each package
763           * </pre>
764           */
765          public Builder setMetadataParts(
766              int index, org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.Builder builderForValue) {
767            ensureMetadataPartsIsMutable();
768            metadataParts_.set(index, builderForValue.build());
769    
770            return this;
771          }
772          /**
773           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
774           *
775           * <pre>
776           * Names of .kotlin_metadata files for each package
777           * </pre>
778           */
779          public Builder addMetadataParts(org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts value) {
780            if (value == null) {
781              throw new NullPointerException();
782            }
783            ensureMetadataPartsIsMutable();
784            metadataParts_.add(value);
785    
786            return this;
787          }
788          /**
789           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
790           *
791           * <pre>
792           * Names of .kotlin_metadata files for each package
793           * </pre>
794           */
795          public Builder addMetadataParts(
796              int index, org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts value) {
797            if (value == null) {
798              throw new NullPointerException();
799            }
800            ensureMetadataPartsIsMutable();
801            metadataParts_.add(index, value);
802    
803            return this;
804          }
805          /**
806           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
807           *
808           * <pre>
809           * Names of .kotlin_metadata files for each package
810           * </pre>
811           */
812          public Builder addMetadataParts(
813              org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.Builder builderForValue) {
814            ensureMetadataPartsIsMutable();
815            metadataParts_.add(builderForValue.build());
816    
817            return this;
818          }
819          /**
820           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
821           *
822           * <pre>
823           * Names of .kotlin_metadata files for each package
824           * </pre>
825           */
826          public Builder addMetadataParts(
827              int index, org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.Builder builderForValue) {
828            ensureMetadataPartsIsMutable();
829            metadataParts_.add(index, builderForValue.build());
830    
831            return this;
832          }
833          /**
834           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
835           *
836           * <pre>
837           * Names of .kotlin_metadata files for each package
838           * </pre>
839           */
840          public Builder addAllMetadataParts(
841              java.lang.Iterable<? extends org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts> values) {
842            ensureMetadataPartsIsMutable();
843            org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
844                values, metadataParts_);
845    
846            return this;
847          }
848          /**
849           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
850           *
851           * <pre>
852           * Names of .kotlin_metadata files for each package
853           * </pre>
854           */
855          public Builder clearMetadataParts() {
856            metadataParts_ = java.util.Collections.emptyList();
857            bitField0_ = (bitField0_ & ~0x00000002);
858    
859            return this;
860          }
861          /**
862           * <code>repeated .org.jetbrains.kotlin.serialization.jvm.PackageParts metadata_parts = 2;</code>
863           *
864           * <pre>
865           * Names of .kotlin_metadata files for each package
866           * </pre>
867           */
868          public Builder removeMetadataParts(int index) {
869            ensureMetadataPartsIsMutable();
870            metadataParts_.remove(index);
871    
872            return this;
873          }
874    
875          // @@protoc_insertion_point(builder_scope:org.jetbrains.kotlin.serialization.jvm.PackageTable)
876        }
877    
878        static {
879          defaultInstance = new PackageTable(true);
880          defaultInstance.initFields();
881        }
882    
883        // @@protoc_insertion_point(class_scope:org.jetbrains.kotlin.serialization.jvm.PackageTable)
884      }
885    
886      public interface PackagePartsOrBuilder extends
887          // @@protoc_insertion_point(interface_extends:org.jetbrains.kotlin.serialization.jvm.PackageParts)
888          org.jetbrains.kotlin.protobuf.MessageLiteOrBuilder {
889    
890        /**
891         * <code>required string package_fq_name = 1;</code>
892         */
893        boolean hasPackageFqName();
894        /**
895         * <code>required string package_fq_name = 1;</code>
896         */
897        java.lang.String getPackageFqName();
898        /**
899         * <code>required string package_fq_name = 1;</code>
900         */
901        org.jetbrains.kotlin.protobuf.ByteString
902            getPackageFqNameBytes();
903    
904        /**
905         * <code>repeated string class_name = 2;</code>
906         *
907         * <pre>
908         * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
909         * (multi-file facades are not present in this list, they are defined below)
910         * </pre>
911         */
912        org.jetbrains.kotlin.protobuf.ProtocolStringList
913            getClassNameList();
914        /**
915         * <code>repeated string class_name = 2;</code>
916         *
917         * <pre>
918         * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
919         * (multi-file facades are not present in this list, they are defined below)
920         * </pre>
921         */
922        int getClassNameCount();
923        /**
924         * <code>repeated string class_name = 2;</code>
925         *
926         * <pre>
927         * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
928         * (multi-file facades are not present in this list, they are defined below)
929         * </pre>
930         */
931        java.lang.String getClassName(int index);
932        /**
933         * <code>repeated string class_name = 2;</code>
934         *
935         * <pre>
936         * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
937         * (multi-file facades are not present in this list, they are defined below)
938         * </pre>
939         */
940        org.jetbrains.kotlin.protobuf.ByteString
941            getClassNameBytes(int index);
942    
943        /**
944         * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
945         *
946         * <pre>
947         * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
948         * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
949         * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
950         * </pre>
951         */
952        java.util.List<java.lang.Integer> getMultifileFacadeIdList();
953        /**
954         * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
955         *
956         * <pre>
957         * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
958         * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
959         * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
960         * </pre>
961         */
962        int getMultifileFacadeIdCount();
963        /**
964         * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
965         *
966         * <pre>
967         * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
968         * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
969         * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
970         * </pre>
971         */
972        int getMultifileFacadeId(int index);
973    
974        /**
975         * <code>repeated string multifile_facade_name = 4;</code>
976         *
977         * <pre>
978         * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
979         * </pre>
980         */
981        org.jetbrains.kotlin.protobuf.ProtocolStringList
982            getMultifileFacadeNameList();
983        /**
984         * <code>repeated string multifile_facade_name = 4;</code>
985         *
986         * <pre>
987         * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
988         * </pre>
989         */
990        int getMultifileFacadeNameCount();
991        /**
992         * <code>repeated string multifile_facade_name = 4;</code>
993         *
994         * <pre>
995         * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
996         * </pre>
997         */
998        java.lang.String getMultifileFacadeName(int index);
999        /**
1000         * <code>repeated string multifile_facade_name = 4;</code>
1001         *
1002         * <pre>
1003         * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1004         * </pre>
1005         */
1006        org.jetbrains.kotlin.protobuf.ByteString
1007            getMultifileFacadeNameBytes(int index);
1008      }
1009      /**
1010       * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.PackageParts}
1011       */
1012      public static final class PackageParts extends
1013          org.jetbrains.kotlin.protobuf.GeneratedMessageLite implements
1014          // @@protoc_insertion_point(message_implements:org.jetbrains.kotlin.serialization.jvm.PackageParts)
1015          PackagePartsOrBuilder {
1016        // Use PackageParts.newBuilder() to construct.
1017        private PackageParts(org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder builder) {
1018          super(builder);
1019          this.unknownFields = builder.getUnknownFields();
1020        }
1021        private PackageParts(boolean noInit) { this.unknownFields = org.jetbrains.kotlin.protobuf.ByteString.EMPTY;}
1022    
1023        private static final PackageParts defaultInstance;
1024        public static PackageParts getDefaultInstance() {
1025          return defaultInstance;
1026        }
1027    
1028        public PackageParts getDefaultInstanceForType() {
1029          return defaultInstance;
1030        }
1031    
1032        private final org.jetbrains.kotlin.protobuf.ByteString unknownFields;
1033        private PackageParts(
1034            org.jetbrains.kotlin.protobuf.CodedInputStream input,
1035            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1036            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1037          initFields();
1038          int mutable_bitField0_ = 0;
1039          org.jetbrains.kotlin.protobuf.ByteString.Output unknownFieldsOutput =
1040              org.jetbrains.kotlin.protobuf.ByteString.newOutput();
1041          org.jetbrains.kotlin.protobuf.CodedOutputStream unknownFieldsCodedOutput =
1042              org.jetbrains.kotlin.protobuf.CodedOutputStream.newInstance(
1043                  unknownFieldsOutput);
1044          try {
1045            boolean done = false;
1046            while (!done) {
1047              int tag = input.readTag();
1048              switch (tag) {
1049                case 0:
1050                  done = true;
1051                  break;
1052                default: {
1053                  if (!parseUnknownField(input, unknownFieldsCodedOutput,
1054                                         extensionRegistry, tag)) {
1055                    done = true;
1056                  }
1057                  break;
1058                }
1059                case 10: {
1060                  org.jetbrains.kotlin.protobuf.ByteString bs = input.readBytes();
1061                  bitField0_ |= 0x00000001;
1062                  packageFqName_ = bs;
1063                  break;
1064                }
1065                case 18: {
1066                  org.jetbrains.kotlin.protobuf.ByteString bs = input.readBytes();
1067                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
1068                    className_ = new org.jetbrains.kotlin.protobuf.LazyStringArrayList();
1069                    mutable_bitField0_ |= 0x00000002;
1070                  }
1071                  className_.add(bs);
1072                  break;
1073                }
1074                case 24: {
1075                  if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
1076                    multifileFacadeId_ = new java.util.ArrayList<java.lang.Integer>();
1077                    mutable_bitField0_ |= 0x00000004;
1078                  }
1079                  multifileFacadeId_.add(input.readInt32());
1080                  break;
1081                }
1082                case 26: {
1083                  int length = input.readRawVarint32();
1084                  int limit = input.pushLimit(length);
1085                  if (!((mutable_bitField0_ & 0x00000004) == 0x00000004) && input.getBytesUntilLimit() > 0) {
1086                    multifileFacadeId_ = new java.util.ArrayList<java.lang.Integer>();
1087                    mutable_bitField0_ |= 0x00000004;
1088                  }
1089                  while (input.getBytesUntilLimit() > 0) {
1090                    multifileFacadeId_.add(input.readInt32());
1091                  }
1092                  input.popLimit(limit);
1093                  break;
1094                }
1095                case 34: {
1096                  org.jetbrains.kotlin.protobuf.ByteString bs = input.readBytes();
1097                  if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
1098                    multifileFacadeName_ = new org.jetbrains.kotlin.protobuf.LazyStringArrayList();
1099                    mutable_bitField0_ |= 0x00000008;
1100                  }
1101                  multifileFacadeName_.add(bs);
1102                  break;
1103                }
1104              }
1105            }
1106          } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
1107            throw e.setUnfinishedMessage(this);
1108          } catch (java.io.IOException e) {
1109            throw new org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException(
1110                e.getMessage()).setUnfinishedMessage(this);
1111          } finally {
1112            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
1113              className_ = className_.getUnmodifiableView();
1114            }
1115            if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
1116              multifileFacadeId_ = java.util.Collections.unmodifiableList(multifileFacadeId_);
1117            }
1118            if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
1119              multifileFacadeName_ = multifileFacadeName_.getUnmodifiableView();
1120            }
1121            try {
1122              unknownFieldsCodedOutput.flush();
1123            } catch (java.io.IOException e) {
1124            // Should not happen
1125            } finally {
1126              unknownFields = unknownFieldsOutput.toByteString();
1127            }
1128            makeExtensionsImmutable();
1129          }
1130        }
1131        public static org.jetbrains.kotlin.protobuf.Parser<PackageParts> PARSER =
1132            new org.jetbrains.kotlin.protobuf.AbstractParser<PackageParts>() {
1133          public PackageParts parsePartialFrom(
1134              org.jetbrains.kotlin.protobuf.CodedInputStream input,
1135              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1136              throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1137            return new PackageParts(input, extensionRegistry);
1138          }
1139        };
1140    
1141        @java.lang.Override
1142        public org.jetbrains.kotlin.protobuf.Parser<PackageParts> getParserForType() {
1143          return PARSER;
1144        }
1145    
1146        private int bitField0_;
1147        public static final int PACKAGE_FQ_NAME_FIELD_NUMBER = 1;
1148        private java.lang.Object packageFqName_;
1149        /**
1150         * <code>required string package_fq_name = 1;</code>
1151         */
1152        public boolean hasPackageFqName() {
1153          return ((bitField0_ & 0x00000001) == 0x00000001);
1154        }
1155        /**
1156         * <code>required string package_fq_name = 1;</code>
1157         */
1158        public java.lang.String getPackageFqName() {
1159          java.lang.Object ref = packageFqName_;
1160          if (ref instanceof java.lang.String) {
1161            return (java.lang.String) ref;
1162          } else {
1163            org.jetbrains.kotlin.protobuf.ByteString bs = 
1164                (org.jetbrains.kotlin.protobuf.ByteString) ref;
1165            java.lang.String s = bs.toStringUtf8();
1166            if (bs.isValidUtf8()) {
1167              packageFqName_ = s;
1168            }
1169            return s;
1170          }
1171        }
1172        /**
1173         * <code>required string package_fq_name = 1;</code>
1174         */
1175        public org.jetbrains.kotlin.protobuf.ByteString
1176            getPackageFqNameBytes() {
1177          java.lang.Object ref = packageFqName_;
1178          if (ref instanceof java.lang.String) {
1179            org.jetbrains.kotlin.protobuf.ByteString b = 
1180                org.jetbrains.kotlin.protobuf.ByteString.copyFromUtf8(
1181                    (java.lang.String) ref);
1182            packageFqName_ = b;
1183            return b;
1184          } else {
1185            return (org.jetbrains.kotlin.protobuf.ByteString) ref;
1186          }
1187        }
1188    
1189        public static final int CLASS_NAME_FIELD_NUMBER = 2;
1190        private org.jetbrains.kotlin.protobuf.LazyStringList className_;
1191        /**
1192         * <code>repeated string class_name = 2;</code>
1193         *
1194         * <pre>
1195         * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1196         * (multi-file facades are not present in this list, they are defined below)
1197         * </pre>
1198         */
1199        public org.jetbrains.kotlin.protobuf.ProtocolStringList
1200            getClassNameList() {
1201          return className_;
1202        }
1203        /**
1204         * <code>repeated string class_name = 2;</code>
1205         *
1206         * <pre>
1207         * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1208         * (multi-file facades are not present in this list, they are defined below)
1209         * </pre>
1210         */
1211        public int getClassNameCount() {
1212          return className_.size();
1213        }
1214        /**
1215         * <code>repeated string class_name = 2;</code>
1216         *
1217         * <pre>
1218         * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1219         * (multi-file facades are not present in this list, they are defined below)
1220         * </pre>
1221         */
1222        public java.lang.String getClassName(int index) {
1223          return className_.get(index);
1224        }
1225        /**
1226         * <code>repeated string class_name = 2;</code>
1227         *
1228         * <pre>
1229         * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1230         * (multi-file facades are not present in this list, they are defined below)
1231         * </pre>
1232         */
1233        public org.jetbrains.kotlin.protobuf.ByteString
1234            getClassNameBytes(int index) {
1235          return className_.getByteString(index);
1236        }
1237    
1238        public static final int MULTIFILE_FACADE_ID_FIELD_NUMBER = 3;
1239        private java.util.List<java.lang.Integer> multifileFacadeId_;
1240        /**
1241         * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1242         *
1243         * <pre>
1244         * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1245         * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1246         * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1247         * </pre>
1248         */
1249        public java.util.List<java.lang.Integer>
1250            getMultifileFacadeIdList() {
1251          return multifileFacadeId_;
1252        }
1253        /**
1254         * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1255         *
1256         * <pre>
1257         * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1258         * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1259         * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1260         * </pre>
1261         */
1262        public int getMultifileFacadeIdCount() {
1263          return multifileFacadeId_.size();
1264        }
1265        /**
1266         * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1267         *
1268         * <pre>
1269         * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1270         * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1271         * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1272         * </pre>
1273         */
1274        public int getMultifileFacadeId(int index) {
1275          return multifileFacadeId_.get(index);
1276        }
1277        private int multifileFacadeIdMemoizedSerializedSize = -1;
1278    
1279        public static final int MULTIFILE_FACADE_NAME_FIELD_NUMBER = 4;
1280        private org.jetbrains.kotlin.protobuf.LazyStringList multifileFacadeName_;
1281        /**
1282         * <code>repeated string multifile_facade_name = 4;</code>
1283         *
1284         * <pre>
1285         * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1286         * </pre>
1287         */
1288        public org.jetbrains.kotlin.protobuf.ProtocolStringList
1289            getMultifileFacadeNameList() {
1290          return multifileFacadeName_;
1291        }
1292        /**
1293         * <code>repeated string multifile_facade_name = 4;</code>
1294         *
1295         * <pre>
1296         * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1297         * </pre>
1298         */
1299        public int getMultifileFacadeNameCount() {
1300          return multifileFacadeName_.size();
1301        }
1302        /**
1303         * <code>repeated string multifile_facade_name = 4;</code>
1304         *
1305         * <pre>
1306         * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1307         * </pre>
1308         */
1309        public java.lang.String getMultifileFacadeName(int index) {
1310          return multifileFacadeName_.get(index);
1311        }
1312        /**
1313         * <code>repeated string multifile_facade_name = 4;</code>
1314         *
1315         * <pre>
1316         * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1317         * </pre>
1318         */
1319        public org.jetbrains.kotlin.protobuf.ByteString
1320            getMultifileFacadeNameBytes(int index) {
1321          return multifileFacadeName_.getByteString(index);
1322        }
1323    
1324        private void initFields() {
1325          packageFqName_ = "";
1326          className_ = org.jetbrains.kotlin.protobuf.LazyStringArrayList.EMPTY;
1327          multifileFacadeId_ = java.util.Collections.emptyList();
1328          multifileFacadeName_ = org.jetbrains.kotlin.protobuf.LazyStringArrayList.EMPTY;
1329        }
1330        private byte memoizedIsInitialized = -1;
1331        public final boolean isInitialized() {
1332          byte isInitialized = memoizedIsInitialized;
1333          if (isInitialized == 1) return true;
1334          if (isInitialized == 0) return false;
1335    
1336          if (!hasPackageFqName()) {
1337            memoizedIsInitialized = 0;
1338            return false;
1339          }
1340          memoizedIsInitialized = 1;
1341          return true;
1342        }
1343    
1344        public void writeTo(org.jetbrains.kotlin.protobuf.CodedOutputStream output)
1345                            throws java.io.IOException {
1346          getSerializedSize();
1347          if (((bitField0_ & 0x00000001) == 0x00000001)) {
1348            output.writeBytes(1, getPackageFqNameBytes());
1349          }
1350          for (int i = 0; i < className_.size(); i++) {
1351            output.writeBytes(2, className_.getByteString(i));
1352          }
1353          if (getMultifileFacadeIdList().size() > 0) {
1354            output.writeRawVarint32(26);
1355            output.writeRawVarint32(multifileFacadeIdMemoizedSerializedSize);
1356          }
1357          for (int i = 0; i < multifileFacadeId_.size(); i++) {
1358            output.writeInt32NoTag(multifileFacadeId_.get(i));
1359          }
1360          for (int i = 0; i < multifileFacadeName_.size(); i++) {
1361            output.writeBytes(4, multifileFacadeName_.getByteString(i));
1362          }
1363          output.writeRawBytes(unknownFields);
1364        }
1365    
1366        private int memoizedSerializedSize = -1;
1367        public int getSerializedSize() {
1368          int size = memoizedSerializedSize;
1369          if (size != -1) return size;
1370    
1371          size = 0;
1372          if (((bitField0_ & 0x00000001) == 0x00000001)) {
1373            size += org.jetbrains.kotlin.protobuf.CodedOutputStream
1374              .computeBytesSize(1, getPackageFqNameBytes());
1375          }
1376          {
1377            int dataSize = 0;
1378            for (int i = 0; i < className_.size(); i++) {
1379              dataSize += org.jetbrains.kotlin.protobuf.CodedOutputStream
1380                .computeBytesSizeNoTag(className_.getByteString(i));
1381            }
1382            size += dataSize;
1383            size += 1 * getClassNameList().size();
1384          }
1385          {
1386            int dataSize = 0;
1387            for (int i = 0; i < multifileFacadeId_.size(); i++) {
1388              dataSize += org.jetbrains.kotlin.protobuf.CodedOutputStream
1389                .computeInt32SizeNoTag(multifileFacadeId_.get(i));
1390            }
1391            size += dataSize;
1392            if (!getMultifileFacadeIdList().isEmpty()) {
1393              size += 1;
1394              size += org.jetbrains.kotlin.protobuf.CodedOutputStream
1395                  .computeInt32SizeNoTag(dataSize);
1396            }
1397            multifileFacadeIdMemoizedSerializedSize = dataSize;
1398          }
1399          {
1400            int dataSize = 0;
1401            for (int i = 0; i < multifileFacadeName_.size(); i++) {
1402              dataSize += org.jetbrains.kotlin.protobuf.CodedOutputStream
1403                .computeBytesSizeNoTag(multifileFacadeName_.getByteString(i));
1404            }
1405            size += dataSize;
1406            size += 1 * getMultifileFacadeNameList().size();
1407          }
1408          size += unknownFields.size();
1409          memoizedSerializedSize = size;
1410          return size;
1411        }
1412    
1413        private static final long serialVersionUID = 0L;
1414        @java.lang.Override
1415        protected java.lang.Object writeReplace()
1416            throws java.io.ObjectStreamException {
1417          return super.writeReplace();
1418        }
1419    
1420        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseFrom(
1421            org.jetbrains.kotlin.protobuf.ByteString data)
1422            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1423          return PARSER.parseFrom(data);
1424        }
1425        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseFrom(
1426            org.jetbrains.kotlin.protobuf.ByteString data,
1427            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1428            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1429          return PARSER.parseFrom(data, extensionRegistry);
1430        }
1431        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseFrom(byte[] data)
1432            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1433          return PARSER.parseFrom(data);
1434        }
1435        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseFrom(
1436            byte[] data,
1437            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1438            throws org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException {
1439          return PARSER.parseFrom(data, extensionRegistry);
1440        }
1441        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseFrom(java.io.InputStream input)
1442            throws java.io.IOException {
1443          return PARSER.parseFrom(input);
1444        }
1445        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseFrom(
1446            java.io.InputStream input,
1447            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1448            throws java.io.IOException {
1449          return PARSER.parseFrom(input, extensionRegistry);
1450        }
1451        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseDelimitedFrom(java.io.InputStream input)
1452            throws java.io.IOException {
1453          return PARSER.parseDelimitedFrom(input);
1454        }
1455        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseDelimitedFrom(
1456            java.io.InputStream input,
1457            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1458            throws java.io.IOException {
1459          return PARSER.parseDelimitedFrom(input, extensionRegistry);
1460        }
1461        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseFrom(
1462            org.jetbrains.kotlin.protobuf.CodedInputStream input)
1463            throws java.io.IOException {
1464          return PARSER.parseFrom(input);
1465        }
1466        public static org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parseFrom(
1467            org.jetbrains.kotlin.protobuf.CodedInputStream input,
1468            org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1469            throws java.io.IOException {
1470          return PARSER.parseFrom(input, extensionRegistry);
1471        }
1472    
1473        public static Builder newBuilder() { return Builder.create(); }
1474        public Builder newBuilderForType() { return newBuilder(); }
1475        public static Builder newBuilder(org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts prototype) {
1476          return newBuilder().mergeFrom(prototype);
1477        }
1478        public Builder toBuilder() { return newBuilder(this); }
1479    
1480        /**
1481         * Protobuf type {@code org.jetbrains.kotlin.serialization.jvm.PackageParts}
1482         */
1483        public static final class Builder extends
1484            org.jetbrains.kotlin.protobuf.GeneratedMessageLite.Builder<
1485              org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts, Builder>
1486            implements
1487            // @@protoc_insertion_point(builder_implements:org.jetbrains.kotlin.serialization.jvm.PackageParts)
1488            org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackagePartsOrBuilder {
1489          // Construct using org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.newBuilder()
1490          private Builder() {
1491            maybeForceBuilderInitialization();
1492          }
1493    
1494          private void maybeForceBuilderInitialization() {
1495          }
1496          private static Builder create() {
1497            return new Builder();
1498          }
1499    
1500          public Builder clear() {
1501            super.clear();
1502            packageFqName_ = "";
1503            bitField0_ = (bitField0_ & ~0x00000001);
1504            className_ = org.jetbrains.kotlin.protobuf.LazyStringArrayList.EMPTY;
1505            bitField0_ = (bitField0_ & ~0x00000002);
1506            multifileFacadeId_ = java.util.Collections.emptyList();
1507            bitField0_ = (bitField0_ & ~0x00000004);
1508            multifileFacadeName_ = org.jetbrains.kotlin.protobuf.LazyStringArrayList.EMPTY;
1509            bitField0_ = (bitField0_ & ~0x00000008);
1510            return this;
1511          }
1512    
1513          public Builder clone() {
1514            return create().mergeFrom(buildPartial());
1515          }
1516    
1517          public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts getDefaultInstanceForType() {
1518            return org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.getDefaultInstance();
1519          }
1520    
1521          public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts build() {
1522            org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts result = buildPartial();
1523            if (!result.isInitialized()) {
1524              throw newUninitializedMessageException(result);
1525            }
1526            return result;
1527          }
1528    
1529          public org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts buildPartial() {
1530            org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts result = new org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts(this);
1531            int from_bitField0_ = bitField0_;
1532            int to_bitField0_ = 0;
1533            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
1534              to_bitField0_ |= 0x00000001;
1535            }
1536            result.packageFqName_ = packageFqName_;
1537            if (((bitField0_ & 0x00000002) == 0x00000002)) {
1538              className_ = className_.getUnmodifiableView();
1539              bitField0_ = (bitField0_ & ~0x00000002);
1540            }
1541            result.className_ = className_;
1542            if (((bitField0_ & 0x00000004) == 0x00000004)) {
1543              multifileFacadeId_ = java.util.Collections.unmodifiableList(multifileFacadeId_);
1544              bitField0_ = (bitField0_ & ~0x00000004);
1545            }
1546            result.multifileFacadeId_ = multifileFacadeId_;
1547            if (((bitField0_ & 0x00000008) == 0x00000008)) {
1548              multifileFacadeName_ = multifileFacadeName_.getUnmodifiableView();
1549              bitField0_ = (bitField0_ & ~0x00000008);
1550            }
1551            result.multifileFacadeName_ = multifileFacadeName_;
1552            result.bitField0_ = to_bitField0_;
1553            return result;
1554          }
1555    
1556          public Builder mergeFrom(org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts other) {
1557            if (other == org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts.getDefaultInstance()) return this;
1558            if (other.hasPackageFqName()) {
1559              bitField0_ |= 0x00000001;
1560              packageFqName_ = other.packageFqName_;
1561              
1562            }
1563            if (!other.className_.isEmpty()) {
1564              if (className_.isEmpty()) {
1565                className_ = other.className_;
1566                bitField0_ = (bitField0_ & ~0x00000002);
1567              } else {
1568                ensureClassNameIsMutable();
1569                className_.addAll(other.className_);
1570              }
1571              
1572            }
1573            if (!other.multifileFacadeId_.isEmpty()) {
1574              if (multifileFacadeId_.isEmpty()) {
1575                multifileFacadeId_ = other.multifileFacadeId_;
1576                bitField0_ = (bitField0_ & ~0x00000004);
1577              } else {
1578                ensureMultifileFacadeIdIsMutable();
1579                multifileFacadeId_.addAll(other.multifileFacadeId_);
1580              }
1581              
1582            }
1583            if (!other.multifileFacadeName_.isEmpty()) {
1584              if (multifileFacadeName_.isEmpty()) {
1585                multifileFacadeName_ = other.multifileFacadeName_;
1586                bitField0_ = (bitField0_ & ~0x00000008);
1587              } else {
1588                ensureMultifileFacadeNameIsMutable();
1589                multifileFacadeName_.addAll(other.multifileFacadeName_);
1590              }
1591              
1592            }
1593            setUnknownFields(
1594                getUnknownFields().concat(other.unknownFields));
1595            return this;
1596          }
1597    
1598          public final boolean isInitialized() {
1599            if (!hasPackageFqName()) {
1600              
1601              return false;
1602            }
1603            return true;
1604          }
1605    
1606          public Builder mergeFrom(
1607              org.jetbrains.kotlin.protobuf.CodedInputStream input,
1608              org.jetbrains.kotlin.protobuf.ExtensionRegistryLite extensionRegistry)
1609              throws java.io.IOException {
1610            org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts parsedMessage = null;
1611            try {
1612              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
1613            } catch (org.jetbrains.kotlin.protobuf.InvalidProtocolBufferException e) {
1614              parsedMessage = (org.jetbrains.kotlin.serialization.jvm.JvmPackageTable.PackageParts) e.getUnfinishedMessage();
1615              throw e;
1616            } finally {
1617              if (parsedMessage != null) {
1618                mergeFrom(parsedMessage);
1619              }
1620            }
1621            return this;
1622          }
1623          private int bitField0_;
1624    
1625          private java.lang.Object packageFqName_ = "";
1626          /**
1627           * <code>required string package_fq_name = 1;</code>
1628           */
1629          public boolean hasPackageFqName() {
1630            return ((bitField0_ & 0x00000001) == 0x00000001);
1631          }
1632          /**
1633           * <code>required string package_fq_name = 1;</code>
1634           */
1635          public java.lang.String getPackageFqName() {
1636            java.lang.Object ref = packageFqName_;
1637            if (!(ref instanceof java.lang.String)) {
1638              org.jetbrains.kotlin.protobuf.ByteString bs =
1639                  (org.jetbrains.kotlin.protobuf.ByteString) ref;
1640              java.lang.String s = bs.toStringUtf8();
1641              if (bs.isValidUtf8()) {
1642                packageFqName_ = s;
1643              }
1644              return s;
1645            } else {
1646              return (java.lang.String) ref;
1647            }
1648          }
1649          /**
1650           * <code>required string package_fq_name = 1;</code>
1651           */
1652          public org.jetbrains.kotlin.protobuf.ByteString
1653              getPackageFqNameBytes() {
1654            java.lang.Object ref = packageFqName_;
1655            if (ref instanceof String) {
1656              org.jetbrains.kotlin.protobuf.ByteString b = 
1657                  org.jetbrains.kotlin.protobuf.ByteString.copyFromUtf8(
1658                      (java.lang.String) ref);
1659              packageFqName_ = b;
1660              return b;
1661            } else {
1662              return (org.jetbrains.kotlin.protobuf.ByteString) ref;
1663            }
1664          }
1665          /**
1666           * <code>required string package_fq_name = 1;</code>
1667           */
1668          public Builder setPackageFqName(
1669              java.lang.String value) {
1670            if (value == null) {
1671        throw new NullPointerException();
1672      }
1673      bitField0_ |= 0x00000001;
1674            packageFqName_ = value;
1675            
1676            return this;
1677          }
1678          /**
1679           * <code>required string package_fq_name = 1;</code>
1680           */
1681          public Builder clearPackageFqName() {
1682            bitField0_ = (bitField0_ & ~0x00000001);
1683            packageFqName_ = getDefaultInstance().getPackageFqName();
1684            
1685            return this;
1686          }
1687          /**
1688           * <code>required string package_fq_name = 1;</code>
1689           */
1690          public Builder setPackageFqNameBytes(
1691              org.jetbrains.kotlin.protobuf.ByteString value) {
1692            if (value == null) {
1693        throw new NullPointerException();
1694      }
1695      bitField0_ |= 0x00000001;
1696            packageFqName_ = value;
1697            
1698            return this;
1699          }
1700    
1701          private org.jetbrains.kotlin.protobuf.LazyStringList className_ = org.jetbrains.kotlin.protobuf.LazyStringArrayList.EMPTY;
1702          private void ensureClassNameIsMutable() {
1703            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
1704              className_ = new org.jetbrains.kotlin.protobuf.LazyStringArrayList(className_);
1705              bitField0_ |= 0x00000002;
1706             }
1707          }
1708          /**
1709           * <code>repeated string class_name = 2;</code>
1710           *
1711           * <pre>
1712           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1713           * (multi-file facades are not present in this list, they are defined below)
1714           * </pre>
1715           */
1716          public org.jetbrains.kotlin.protobuf.ProtocolStringList
1717              getClassNameList() {
1718            return className_.getUnmodifiableView();
1719          }
1720          /**
1721           * <code>repeated string class_name = 2;</code>
1722           *
1723           * <pre>
1724           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1725           * (multi-file facades are not present in this list, they are defined below)
1726           * </pre>
1727           */
1728          public int getClassNameCount() {
1729            return className_.size();
1730          }
1731          /**
1732           * <code>repeated string class_name = 2;</code>
1733           *
1734           * <pre>
1735           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1736           * (multi-file facades are not present in this list, they are defined below)
1737           * </pre>
1738           */
1739          public java.lang.String getClassName(int index) {
1740            return className_.get(index);
1741          }
1742          /**
1743           * <code>repeated string class_name = 2;</code>
1744           *
1745           * <pre>
1746           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1747           * (multi-file facades are not present in this list, they are defined below)
1748           * </pre>
1749           */
1750          public org.jetbrains.kotlin.protobuf.ByteString
1751              getClassNameBytes(int index) {
1752            return className_.getByteString(index);
1753          }
1754          /**
1755           * <code>repeated string class_name = 2;</code>
1756           *
1757           * <pre>
1758           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1759           * (multi-file facades are not present in this list, they are defined below)
1760           * </pre>
1761           */
1762          public Builder setClassName(
1763              int index, java.lang.String value) {
1764            if (value == null) {
1765        throw new NullPointerException();
1766      }
1767      ensureClassNameIsMutable();
1768            className_.set(index, value);
1769            
1770            return this;
1771          }
1772          /**
1773           * <code>repeated string class_name = 2;</code>
1774           *
1775           * <pre>
1776           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1777           * (multi-file facades are not present in this list, they are defined below)
1778           * </pre>
1779           */
1780          public Builder addClassName(
1781              java.lang.String value) {
1782            if (value == null) {
1783        throw new NullPointerException();
1784      }
1785      ensureClassNameIsMutable();
1786            className_.add(value);
1787            
1788            return this;
1789          }
1790          /**
1791           * <code>repeated string class_name = 2;</code>
1792           *
1793           * <pre>
1794           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1795           * (multi-file facades are not present in this list, they are defined below)
1796           * </pre>
1797           */
1798          public Builder addAllClassName(
1799              java.lang.Iterable<java.lang.String> values) {
1800            ensureClassNameIsMutable();
1801            org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
1802                values, className_);
1803            
1804            return this;
1805          }
1806          /**
1807           * <code>repeated string class_name = 2;</code>
1808           *
1809           * <pre>
1810           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1811           * (multi-file facades are not present in this list, they are defined below)
1812           * </pre>
1813           */
1814          public Builder clearClassName() {
1815            className_ = org.jetbrains.kotlin.protobuf.LazyStringArrayList.EMPTY;
1816            bitField0_ = (bitField0_ & ~0x00000002);
1817            
1818            return this;
1819          }
1820          /**
1821           * <code>repeated string class_name = 2;</code>
1822           *
1823           * <pre>
1824           * Short names of files, without extension, present in this package. Only single file facades and multi-file _parts_ are listed here
1825           * (multi-file facades are not present in this list, they are defined below)
1826           * </pre>
1827           */
1828          public Builder addClassNameBytes(
1829              org.jetbrains.kotlin.protobuf.ByteString value) {
1830            if (value == null) {
1831        throw new NullPointerException();
1832      }
1833      ensureClassNameIsMutable();
1834            className_.add(value);
1835            
1836            return this;
1837          }
1838    
1839          private java.util.List<java.lang.Integer> multifileFacadeId_ = java.util.Collections.emptyList();
1840          private void ensureMultifileFacadeIdIsMutable() {
1841            if (!((bitField0_ & 0x00000004) == 0x00000004)) {
1842              multifileFacadeId_ = new java.util.ArrayList<java.lang.Integer>(multifileFacadeId_);
1843              bitField0_ |= 0x00000004;
1844             }
1845          }
1846          /**
1847           * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1848           *
1849           * <pre>
1850           * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1851           * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1852           * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1853           * </pre>
1854           */
1855          public java.util.List<java.lang.Integer>
1856              getMultifileFacadeIdList() {
1857            return java.util.Collections.unmodifiableList(multifileFacadeId_);
1858          }
1859          /**
1860           * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1861           *
1862           * <pre>
1863           * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1864           * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1865           * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1866           * </pre>
1867           */
1868          public int getMultifileFacadeIdCount() {
1869            return multifileFacadeId_.size();
1870          }
1871          /**
1872           * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1873           *
1874           * <pre>
1875           * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1876           * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1877           * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1878           * </pre>
1879           */
1880          public int getMultifileFacadeId(int index) {
1881            return multifileFacadeId_.get(index);
1882          }
1883          /**
1884           * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1885           *
1886           * <pre>
1887           * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1888           * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1889           * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1890           * </pre>
1891           */
1892          public Builder setMultifileFacadeId(
1893              int index, int value) {
1894            ensureMultifileFacadeIdIsMutable();
1895            multifileFacadeId_.set(index, value);
1896            
1897            return this;
1898          }
1899          /**
1900           * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1901           *
1902           * <pre>
1903           * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1904           * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1905           * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1906           * </pre>
1907           */
1908          public Builder addMultifileFacadeId(int value) {
1909            ensureMultifileFacadeIdIsMutable();
1910            multifileFacadeId_.add(value);
1911            
1912            return this;
1913          }
1914          /**
1915           * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1916           *
1917           * <pre>
1918           * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1919           * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1920           * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1921           * </pre>
1922           */
1923          public Builder addAllMultifileFacadeId(
1924              java.lang.Iterable<? extends java.lang.Integer> values) {
1925            ensureMultifileFacadeIdIsMutable();
1926            org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
1927                values, multifileFacadeId_);
1928            
1929            return this;
1930          }
1931          /**
1932           * <code>repeated int32 multifile_facade_id = 3 [packed = true];</code>
1933           *
1934           * <pre>
1935           * For each class name listed above, index of the name of the corresponding multi-file facade class in multifile_facade_name + 1,
1936           * or 0 if the class is not a multi-file part. If there's no value in this list at some index, the value is assumed to be 0.
1937           * (e.g. if there are no multi-file classes in the module, this list is not going to exist at all)
1938           * </pre>
1939           */
1940          public Builder clearMultifileFacadeId() {
1941            multifileFacadeId_ = java.util.Collections.emptyList();
1942            bitField0_ = (bitField0_ & ~0x00000004);
1943            
1944            return this;
1945          }
1946    
1947          private org.jetbrains.kotlin.protobuf.LazyStringList multifileFacadeName_ = org.jetbrains.kotlin.protobuf.LazyStringArrayList.EMPTY;
1948          private void ensureMultifileFacadeNameIsMutable() {
1949            if (!((bitField0_ & 0x00000008) == 0x00000008)) {
1950              multifileFacadeName_ = new org.jetbrains.kotlin.protobuf.LazyStringArrayList(multifileFacadeName_);
1951              bitField0_ |= 0x00000008;
1952             }
1953          }
1954          /**
1955           * <code>repeated string multifile_facade_name = 4;</code>
1956           *
1957           * <pre>
1958           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1959           * </pre>
1960           */
1961          public org.jetbrains.kotlin.protobuf.ProtocolStringList
1962              getMultifileFacadeNameList() {
1963            return multifileFacadeName_.getUnmodifiableView();
1964          }
1965          /**
1966           * <code>repeated string multifile_facade_name = 4;</code>
1967           *
1968           * <pre>
1969           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1970           * </pre>
1971           */
1972          public int getMultifileFacadeNameCount() {
1973            return multifileFacadeName_.size();
1974          }
1975          /**
1976           * <code>repeated string multifile_facade_name = 4;</code>
1977           *
1978           * <pre>
1979           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1980           * </pre>
1981           */
1982          public java.lang.String getMultifileFacadeName(int index) {
1983            return multifileFacadeName_.get(index);
1984          }
1985          /**
1986           * <code>repeated string multifile_facade_name = 4;</code>
1987           *
1988           * <pre>
1989           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
1990           * </pre>
1991           */
1992          public org.jetbrains.kotlin.protobuf.ByteString
1993              getMultifileFacadeNameBytes(int index) {
1994            return multifileFacadeName_.getByteString(index);
1995          }
1996          /**
1997           * <code>repeated string multifile_facade_name = 4;</code>
1998           *
1999           * <pre>
2000           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
2001           * </pre>
2002           */
2003          public Builder setMultifileFacadeName(
2004              int index, java.lang.String value) {
2005            if (value == null) {
2006        throw new NullPointerException();
2007      }
2008      ensureMultifileFacadeNameIsMutable();
2009            multifileFacadeName_.set(index, value);
2010            
2011            return this;
2012          }
2013          /**
2014           * <code>repeated string multifile_facade_name = 4;</code>
2015           *
2016           * <pre>
2017           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
2018           * </pre>
2019           */
2020          public Builder addMultifileFacadeName(
2021              java.lang.String value) {
2022            if (value == null) {
2023        throw new NullPointerException();
2024      }
2025      ensureMultifileFacadeNameIsMutable();
2026            multifileFacadeName_.add(value);
2027            
2028            return this;
2029          }
2030          /**
2031           * <code>repeated string multifile_facade_name = 4;</code>
2032           *
2033           * <pre>
2034           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
2035           * </pre>
2036           */
2037          public Builder addAllMultifileFacadeName(
2038              java.lang.Iterable<java.lang.String> values) {
2039            ensureMultifileFacadeNameIsMutable();
2040            org.jetbrains.kotlin.protobuf.AbstractMessageLite.Builder.addAll(
2041                values, multifileFacadeName_);
2042            
2043            return this;
2044          }
2045          /**
2046           * <code>repeated string multifile_facade_name = 4;</code>
2047           *
2048           * <pre>
2049           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
2050           * </pre>
2051           */
2052          public Builder clearMultifileFacadeName() {
2053            multifileFacadeName_ = org.jetbrains.kotlin.protobuf.LazyStringArrayList.EMPTY;
2054            bitField0_ = (bitField0_ & ~0x00000008);
2055            
2056            return this;
2057          }
2058          /**
2059           * <code>repeated string multifile_facade_name = 4;</code>
2060           *
2061           * <pre>
2062           * Short names of multi-file facades, used in multifile_facade_id to store the part -&gt; facade mapping.
2063           * </pre>
2064           */
2065          public Builder addMultifileFacadeNameBytes(
2066              org.jetbrains.kotlin.protobuf.ByteString value) {
2067            if (value == null) {
2068        throw new NullPointerException();
2069      }
2070      ensureMultifileFacadeNameIsMutable();
2071            multifileFacadeName_.add(value);
2072            
2073            return this;
2074          }
2075    
2076          // @@protoc_insertion_point(builder_scope:org.jetbrains.kotlin.serialization.jvm.PackageParts)
2077        }
2078    
2079        static {
2080          defaultInstance = new PackageParts(true);
2081          defaultInstance.initFields();
2082        }
2083    
2084        // @@protoc_insertion_point(class_scope:org.jetbrains.kotlin.serialization.jvm.PackageParts)
2085      }
2086    
2087    
2088      static {
2089      }
2090    
2091      // @@protoc_insertion_point(outer_class_scope)
2092    }