001    // Generated by the protocol buffer compiler.  DO NOT EDIT!
002    // source: core/serialization/src/descriptors.proto
003    
004    package org.jetbrains.jet.descriptors.serialization;
005    
006    public final class ProtoBuf {
007      private ProtoBuf() {}
008      public static void registerAllExtensions(
009          com.google.protobuf.ExtensionRegistryLite registry) {
010      }
011      /**
012       * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.Modality}
013       */
014      public enum Modality
015          implements com.google.protobuf.Internal.EnumLite {
016        /**
017         * <code>FINAL = 0;</code>
018         *
019         * <pre>
020         * 2 bits
021         * </pre>
022         */
023        FINAL(0, 0),
024        /**
025         * <code>OPEN = 1;</code>
026         */
027        OPEN(1, 1),
028        /**
029         * <code>ABSTRACT = 2;</code>
030         */
031        ABSTRACT(2, 2),
032        ;
033    
034        /**
035         * <code>FINAL = 0;</code>
036         *
037         * <pre>
038         * 2 bits
039         * </pre>
040         */
041        public static final int FINAL_VALUE = 0;
042        /**
043         * <code>OPEN = 1;</code>
044         */
045        public static final int OPEN_VALUE = 1;
046        /**
047         * <code>ABSTRACT = 2;</code>
048         */
049        public static final int ABSTRACT_VALUE = 2;
050    
051    
052        public final int getNumber() { return value; }
053    
054        public static Modality valueOf(int value) {
055          switch (value) {
056            case 0: return FINAL;
057            case 1: return OPEN;
058            case 2: return ABSTRACT;
059            default: return null;
060          }
061        }
062    
063        public static com.google.protobuf.Internal.EnumLiteMap<Modality>
064            internalGetValueMap() {
065          return internalValueMap;
066        }
067        private static com.google.protobuf.Internal.EnumLiteMap<Modality>
068            internalValueMap =
069              new com.google.protobuf.Internal.EnumLiteMap<Modality>() {
070                public Modality findValueByNumber(int number) {
071                  return Modality.valueOf(number);
072                }
073              };
074    
075        private final int value;
076    
077        private Modality(int index, int value) {
078          this.value = value;
079        }
080    
081        // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.Modality)
082      }
083    
084      /**
085       * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.Visibility}
086       */
087      public enum Visibility
088          implements com.google.protobuf.Internal.EnumLite {
089        /**
090         * <code>INTERNAL = 0;</code>
091         *
092         * <pre>
093         * 3 bits
094         * </pre>
095         */
096        INTERNAL(0, 0),
097        /**
098         * <code>PRIVATE = 1;</code>
099         */
100        PRIVATE(1, 1),
101        /**
102         * <code>PROTECTED = 2;</code>
103         */
104        PROTECTED(2, 2),
105        /**
106         * <code>PUBLIC = 3;</code>
107         */
108        PUBLIC(3, 3),
109        /**
110         * <code>EXTRA = 4;</code>
111         *
112         * <pre>
113         * there's an extra field for the actual visibility
114         * </pre>
115         */
116        EXTRA(4, 4),
117        ;
118    
119        /**
120         * <code>INTERNAL = 0;</code>
121         *
122         * <pre>
123         * 3 bits
124         * </pre>
125         */
126        public static final int INTERNAL_VALUE = 0;
127        /**
128         * <code>PRIVATE = 1;</code>
129         */
130        public static final int PRIVATE_VALUE = 1;
131        /**
132         * <code>PROTECTED = 2;</code>
133         */
134        public static final int PROTECTED_VALUE = 2;
135        /**
136         * <code>PUBLIC = 3;</code>
137         */
138        public static final int PUBLIC_VALUE = 3;
139        /**
140         * <code>EXTRA = 4;</code>
141         *
142         * <pre>
143         * there's an extra field for the actual visibility
144         * </pre>
145         */
146        public static final int EXTRA_VALUE = 4;
147    
148    
149        public final int getNumber() { return value; }
150    
151        public static Visibility valueOf(int value) {
152          switch (value) {
153            case 0: return INTERNAL;
154            case 1: return PRIVATE;
155            case 2: return PROTECTED;
156            case 3: return PUBLIC;
157            case 4: return EXTRA;
158            default: return null;
159          }
160        }
161    
162        public static com.google.protobuf.Internal.EnumLiteMap<Visibility>
163            internalGetValueMap() {
164          return internalValueMap;
165        }
166        private static com.google.protobuf.Internal.EnumLiteMap<Visibility>
167            internalValueMap =
168              new com.google.protobuf.Internal.EnumLiteMap<Visibility>() {
169                public Visibility findValueByNumber(int number) {
170                  return Visibility.valueOf(number);
171                }
172              };
173    
174        private final int value;
175    
176        private Visibility(int index, int value) {
177          this.value = value;
178        }
179    
180        // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.Visibility)
181      }
182    
183      public interface SimpleNameTableOrBuilder
184          extends com.google.protobuf.MessageLiteOrBuilder {
185    
186        // repeated string name = 1;
187        /**
188         * <code>repeated string name = 1;</code>
189         */
190        java.util.List<java.lang.String>
191        getNameList();
192        /**
193         * <code>repeated string name = 1;</code>
194         */
195        int getNameCount();
196        /**
197         * <code>repeated string name = 1;</code>
198         */
199        java.lang.String getName(int index);
200        /**
201         * <code>repeated string name = 1;</code>
202         */
203        com.google.protobuf.ByteString
204            getNameBytes(int index);
205      }
206      /**
207       * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.SimpleNameTable}
208       */
209      public static final class SimpleNameTable extends
210          com.google.protobuf.GeneratedMessageLite
211          implements SimpleNameTableOrBuilder {
212        // Use SimpleNameTable.newBuilder() to construct.
213        private SimpleNameTable(com.google.protobuf.GeneratedMessageLite.Builder builder) {
214          super(builder);
215    
216        }
217        private SimpleNameTable(boolean noInit) {}
218    
219        private static final SimpleNameTable defaultInstance;
220        public static SimpleNameTable getDefaultInstance() {
221          return defaultInstance;
222        }
223    
224        public SimpleNameTable getDefaultInstanceForType() {
225          return defaultInstance;
226        }
227    
228        private SimpleNameTable(
229            com.google.protobuf.CodedInputStream input,
230            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
231            throws com.google.protobuf.InvalidProtocolBufferException {
232          initFields();
233          int mutable_bitField0_ = 0;
234          try {
235            boolean done = false;
236            while (!done) {
237              int tag = input.readTag();
238              switch (tag) {
239                case 0:
240                  done = true;
241                  break;
242                default: {
243                  if (!parseUnknownField(input,
244                                         extensionRegistry, tag)) {
245                    done = true;
246                  }
247                  break;
248                }
249                case 10: {
250                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
251                    name_ = new com.google.protobuf.LazyStringArrayList();
252                    mutable_bitField0_ |= 0x00000001;
253                  }
254                  name_.add(input.readBytes());
255                  break;
256                }
257              }
258            }
259          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
260            throw e.setUnfinishedMessage(this);
261          } catch (java.io.IOException e) {
262            throw new com.google.protobuf.InvalidProtocolBufferException(
263                e.getMessage()).setUnfinishedMessage(this);
264          } finally {
265            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
266              name_ = new com.google.protobuf.UnmodifiableLazyStringList(name_);
267            }
268            makeExtensionsImmutable();
269          }
270        }
271        public static com.google.protobuf.Parser<SimpleNameTable> PARSER =
272            new com.google.protobuf.AbstractParser<SimpleNameTable>() {
273          public SimpleNameTable parsePartialFrom(
274              com.google.protobuf.CodedInputStream input,
275              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
276              throws com.google.protobuf.InvalidProtocolBufferException {
277            return new SimpleNameTable(input, extensionRegistry);
278          }
279        };
280    
281        @java.lang.Override
282        public com.google.protobuf.Parser<SimpleNameTable> getParserForType() {
283          return PARSER;
284        }
285    
286        // repeated string name = 1;
287        public static final int NAME_FIELD_NUMBER = 1;
288        private com.google.protobuf.LazyStringList name_;
289        /**
290         * <code>repeated string name = 1;</code>
291         */
292        public java.util.List<java.lang.String>
293            getNameList() {
294          return name_;
295        }
296        /**
297         * <code>repeated string name = 1;</code>
298         */
299        public int getNameCount() {
300          return name_.size();
301        }
302        /**
303         * <code>repeated string name = 1;</code>
304         */
305        public java.lang.String getName(int index) {
306          return name_.get(index);
307        }
308        /**
309         * <code>repeated string name = 1;</code>
310         */
311        public com.google.protobuf.ByteString
312            getNameBytes(int index) {
313          return name_.getByteString(index);
314        }
315    
316        private void initFields() {
317          name_ = com.google.protobuf.LazyStringArrayList.EMPTY;
318        }
319        private byte memoizedIsInitialized = -1;
320        public final boolean isInitialized() {
321          byte isInitialized = memoizedIsInitialized;
322          if (isInitialized != -1) return isInitialized == 1;
323    
324          memoizedIsInitialized = 1;
325          return true;
326        }
327    
328        public void writeTo(com.google.protobuf.CodedOutputStream output)
329                            throws java.io.IOException {
330          getSerializedSize();
331          for (int i = 0; i < name_.size(); i++) {
332            output.writeBytes(1, name_.getByteString(i));
333          }
334        }
335    
336        private int memoizedSerializedSize = -1;
337        public int getSerializedSize() {
338          int size = memoizedSerializedSize;
339          if (size != -1) return size;
340    
341          size = 0;
342          {
343            int dataSize = 0;
344            for (int i = 0; i < name_.size(); i++) {
345              dataSize += com.google.protobuf.CodedOutputStream
346                .computeBytesSizeNoTag(name_.getByteString(i));
347            }
348            size += dataSize;
349            size += 1 * getNameList().size();
350          }
351          memoizedSerializedSize = size;
352          return size;
353        }
354    
355        private static final long serialVersionUID = 0L;
356        @java.lang.Override
357        protected java.lang.Object writeReplace()
358            throws java.io.ObjectStreamException {
359          return super.writeReplace();
360        }
361    
362        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseFrom(
363            com.google.protobuf.ByteString data)
364            throws com.google.protobuf.InvalidProtocolBufferException {
365          return PARSER.parseFrom(data);
366        }
367        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseFrom(
368            com.google.protobuf.ByteString data,
369            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
370            throws com.google.protobuf.InvalidProtocolBufferException {
371          return PARSER.parseFrom(data, extensionRegistry);
372        }
373        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseFrom(byte[] data)
374            throws com.google.protobuf.InvalidProtocolBufferException {
375          return PARSER.parseFrom(data);
376        }
377        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseFrom(
378            byte[] data,
379            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
380            throws com.google.protobuf.InvalidProtocolBufferException {
381          return PARSER.parseFrom(data, extensionRegistry);
382        }
383        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseFrom(java.io.InputStream input)
384            throws java.io.IOException {
385          return PARSER.parseFrom(input);
386        }
387        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseFrom(
388            java.io.InputStream input,
389            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
390            throws java.io.IOException {
391          return PARSER.parseFrom(input, extensionRegistry);
392        }
393        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseDelimitedFrom(java.io.InputStream input)
394            throws java.io.IOException {
395          return PARSER.parseDelimitedFrom(input);
396        }
397        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseDelimitedFrom(
398            java.io.InputStream input,
399            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
400            throws java.io.IOException {
401          return PARSER.parseDelimitedFrom(input, extensionRegistry);
402        }
403        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseFrom(
404            com.google.protobuf.CodedInputStream input)
405            throws java.io.IOException {
406          return PARSER.parseFrom(input);
407        }
408        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parseFrom(
409            com.google.protobuf.CodedInputStream input,
410            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
411            throws java.io.IOException {
412          return PARSER.parseFrom(input, extensionRegistry);
413        }
414    
415        public static Builder newBuilder() { return Builder.create(); }
416        public Builder newBuilderForType() { return newBuilder(); }
417        public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable prototype) {
418          return newBuilder().mergeFrom(prototype);
419        }
420        public Builder toBuilder() { return newBuilder(this); }
421    
422        /**
423         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.SimpleNameTable}
424         */
425        public static final class Builder extends
426            com.google.protobuf.GeneratedMessageLite.Builder<
427              org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable, Builder>
428            implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTableOrBuilder {
429          // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable.newBuilder()
430          private Builder() {
431            maybeForceBuilderInitialization();
432          }
433    
434          private void maybeForceBuilderInitialization() {
435          }
436          private static Builder create() {
437            return new Builder();
438          }
439    
440          public Builder clear() {
441            super.clear();
442            name_ = com.google.protobuf.LazyStringArrayList.EMPTY;
443            bitField0_ = (bitField0_ & ~0x00000001);
444            return this;
445          }
446    
447          public Builder clone() {
448            return create().mergeFrom(buildPartial());
449          }
450    
451          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable getDefaultInstanceForType() {
452            return org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable.getDefaultInstance();
453          }
454    
455          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable build() {
456            org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable result = buildPartial();
457            if (!result.isInitialized()) {
458              throw newUninitializedMessageException(result);
459            }
460            return result;
461          }
462    
463          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable buildPartial() {
464            org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable(this);
465            int from_bitField0_ = bitField0_;
466            if (((bitField0_ & 0x00000001) == 0x00000001)) {
467              name_ = new com.google.protobuf.UnmodifiableLazyStringList(
468                  name_);
469              bitField0_ = (bitField0_ & ~0x00000001);
470            }
471            result.name_ = name_;
472            return result;
473          }
474    
475          public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable other) {
476            if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable.getDefaultInstance()) return this;
477            if (!other.name_.isEmpty()) {
478              if (name_.isEmpty()) {
479                name_ = other.name_;
480                bitField0_ = (bitField0_ & ~0x00000001);
481              } else {
482                ensureNameIsMutable();
483                name_.addAll(other.name_);
484              }
485              
486            }
487            return this;
488          }
489    
490          public final boolean isInitialized() {
491            return true;
492          }
493    
494          public Builder mergeFrom(
495              com.google.protobuf.CodedInputStream input,
496              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
497              throws java.io.IOException {
498            org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable parsedMessage = null;
499            try {
500              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
501            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
502              parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.SimpleNameTable) e.getUnfinishedMessage();
503              throw e;
504            } finally {
505              if (parsedMessage != null) {
506                mergeFrom(parsedMessage);
507              }
508            }
509            return this;
510          }
511          private int bitField0_;
512    
513          // repeated string name = 1;
514          private com.google.protobuf.LazyStringList name_ = com.google.protobuf.LazyStringArrayList.EMPTY;
515          private void ensureNameIsMutable() {
516            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
517              name_ = new com.google.protobuf.LazyStringArrayList(name_);
518              bitField0_ |= 0x00000001;
519             }
520          }
521          /**
522           * <code>repeated string name = 1;</code>
523           */
524          public java.util.List<java.lang.String>
525              getNameList() {
526            return java.util.Collections.unmodifiableList(name_);
527          }
528          /**
529           * <code>repeated string name = 1;</code>
530           */
531          public int getNameCount() {
532            return name_.size();
533          }
534          /**
535           * <code>repeated string name = 1;</code>
536           */
537          public java.lang.String getName(int index) {
538            return name_.get(index);
539          }
540          /**
541           * <code>repeated string name = 1;</code>
542           */
543          public com.google.protobuf.ByteString
544              getNameBytes(int index) {
545            return name_.getByteString(index);
546          }
547          /**
548           * <code>repeated string name = 1;</code>
549           */
550          public Builder setName(
551              int index, java.lang.String value) {
552            if (value == null) {
553        throw new NullPointerException();
554      }
555      ensureNameIsMutable();
556            name_.set(index, value);
557            
558            return this;
559          }
560          /**
561           * <code>repeated string name = 1;</code>
562           */
563          public Builder addName(
564              java.lang.String value) {
565            if (value == null) {
566        throw new NullPointerException();
567      }
568      ensureNameIsMutable();
569            name_.add(value);
570            
571            return this;
572          }
573          /**
574           * <code>repeated string name = 1;</code>
575           */
576          public Builder addAllName(
577              java.lang.Iterable<java.lang.String> values) {
578            ensureNameIsMutable();
579            super.addAll(values, name_);
580            
581            return this;
582          }
583          /**
584           * <code>repeated string name = 1;</code>
585           */
586          public Builder clearName() {
587            name_ = com.google.protobuf.LazyStringArrayList.EMPTY;
588            bitField0_ = (bitField0_ & ~0x00000001);
589            
590            return this;
591          }
592          /**
593           * <code>repeated string name = 1;</code>
594           */
595          public Builder addNameBytes(
596              com.google.protobuf.ByteString value) {
597            if (value == null) {
598        throw new NullPointerException();
599      }
600      ensureNameIsMutable();
601            name_.add(value);
602            
603            return this;
604          }
605    
606          // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.SimpleNameTable)
607        }
608    
609        static {
610          defaultInstance = new SimpleNameTable(true);
611          defaultInstance.initFields();
612        }
613    
614        // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.SimpleNameTable)
615      }
616    
617      public interface QualifiedNameTableOrBuilder
618          extends com.google.protobuf.MessageLiteOrBuilder {
619    
620        // repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;
621        /**
622         * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
623         */
624        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName> 
625            getQualifiedNameList();
626        /**
627         * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
628         */
629        org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName getQualifiedName(int index);
630        /**
631         * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
632         */
633        int getQualifiedNameCount();
634      }
635      /**
636       * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.QualifiedNameTable}
637       */
638      public static final class QualifiedNameTable extends
639          com.google.protobuf.GeneratedMessageLite
640          implements QualifiedNameTableOrBuilder {
641        // Use QualifiedNameTable.newBuilder() to construct.
642        private QualifiedNameTable(com.google.protobuf.GeneratedMessageLite.Builder builder) {
643          super(builder);
644    
645        }
646        private QualifiedNameTable(boolean noInit) {}
647    
648        private static final QualifiedNameTable defaultInstance;
649        public static QualifiedNameTable getDefaultInstance() {
650          return defaultInstance;
651        }
652    
653        public QualifiedNameTable getDefaultInstanceForType() {
654          return defaultInstance;
655        }
656    
657        private QualifiedNameTable(
658            com.google.protobuf.CodedInputStream input,
659            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
660            throws com.google.protobuf.InvalidProtocolBufferException {
661          initFields();
662          int mutable_bitField0_ = 0;
663          try {
664            boolean done = false;
665            while (!done) {
666              int tag = input.readTag();
667              switch (tag) {
668                case 0:
669                  done = true;
670                  break;
671                default: {
672                  if (!parseUnknownField(input,
673                                         extensionRegistry, tag)) {
674                    done = true;
675                  }
676                  break;
677                }
678                case 10: {
679                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
680                    qualifiedName_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName>();
681                    mutable_bitField0_ |= 0x00000001;
682                  }
683                  qualifiedName_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.PARSER, extensionRegistry));
684                  break;
685                }
686              }
687            }
688          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
689            throw e.setUnfinishedMessage(this);
690          } catch (java.io.IOException e) {
691            throw new com.google.protobuf.InvalidProtocolBufferException(
692                e.getMessage()).setUnfinishedMessage(this);
693          } finally {
694            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
695              qualifiedName_ = java.util.Collections.unmodifiableList(qualifiedName_);
696            }
697            makeExtensionsImmutable();
698          }
699        }
700        public static com.google.protobuf.Parser<QualifiedNameTable> PARSER =
701            new com.google.protobuf.AbstractParser<QualifiedNameTable>() {
702          public QualifiedNameTable parsePartialFrom(
703              com.google.protobuf.CodedInputStream input,
704              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
705              throws com.google.protobuf.InvalidProtocolBufferException {
706            return new QualifiedNameTable(input, extensionRegistry);
707          }
708        };
709    
710        @java.lang.Override
711        public com.google.protobuf.Parser<QualifiedNameTable> getParserForType() {
712          return PARSER;
713        }
714    
715        public interface QualifiedNameOrBuilder
716            extends com.google.protobuf.MessageLiteOrBuilder {
717    
718          // optional int32 parent_qualified_name = 1 [default = -1];
719          /**
720           * <code>optional int32 parent_qualified_name = 1 [default = -1];</code>
721           */
722          boolean hasParentQualifiedName();
723          /**
724           * <code>optional int32 parent_qualified_name = 1 [default = -1];</code>
725           */
726          int getParentQualifiedName();
727    
728          // required int32 short_name = 2;
729          /**
730           * <code>required int32 short_name = 2;</code>
731           */
732          boolean hasShortName();
733          /**
734           * <code>required int32 short_name = 2;</code>
735           */
736          int getShortName();
737    
738          // optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];
739          /**
740           * <code>optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];</code>
741           */
742          boolean hasKind();
743          /**
744           * <code>optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];</code>
745           */
746          org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind getKind();
747        }
748        /**
749         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName}
750         */
751        public static final class QualifiedName extends
752            com.google.protobuf.GeneratedMessageLite
753            implements QualifiedNameOrBuilder {
754          // Use QualifiedName.newBuilder() to construct.
755          private QualifiedName(com.google.protobuf.GeneratedMessageLite.Builder builder) {
756            super(builder);
757    
758          }
759          private QualifiedName(boolean noInit) {}
760    
761          private static final QualifiedName defaultInstance;
762          public static QualifiedName getDefaultInstance() {
763            return defaultInstance;
764          }
765    
766          public QualifiedName getDefaultInstanceForType() {
767            return defaultInstance;
768          }
769    
770          private QualifiedName(
771              com.google.protobuf.CodedInputStream input,
772              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
773              throws com.google.protobuf.InvalidProtocolBufferException {
774            initFields();
775            int mutable_bitField0_ = 0;
776            try {
777              boolean done = false;
778              while (!done) {
779                int tag = input.readTag();
780                switch (tag) {
781                  case 0:
782                    done = true;
783                    break;
784                  default: {
785                    if (!parseUnknownField(input,
786                                           extensionRegistry, tag)) {
787                      done = true;
788                    }
789                    break;
790                  }
791                  case 8: {
792                    bitField0_ |= 0x00000001;
793                    parentQualifiedName_ = input.readInt32();
794                    break;
795                  }
796                  case 16: {
797                    bitField0_ |= 0x00000002;
798                    shortName_ = input.readInt32();
799                    break;
800                  }
801                  case 24: {
802                    int rawValue = input.readEnum();
803                    org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind value = org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind.valueOf(rawValue);
804                    if (value != null) {
805                      bitField0_ |= 0x00000004;
806                      kind_ = value;
807                    }
808                    break;
809                  }
810                }
811              }
812            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
813              throw e.setUnfinishedMessage(this);
814            } catch (java.io.IOException e) {
815              throw new com.google.protobuf.InvalidProtocolBufferException(
816                  e.getMessage()).setUnfinishedMessage(this);
817            } finally {
818              makeExtensionsImmutable();
819            }
820          }
821          public static com.google.protobuf.Parser<QualifiedName> PARSER =
822              new com.google.protobuf.AbstractParser<QualifiedName>() {
823            public QualifiedName parsePartialFrom(
824                com.google.protobuf.CodedInputStream input,
825                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
826                throws com.google.protobuf.InvalidProtocolBufferException {
827              return new QualifiedName(input, extensionRegistry);
828            }
829          };
830    
831          @java.lang.Override
832          public com.google.protobuf.Parser<QualifiedName> getParserForType() {
833            return PARSER;
834          }
835    
836          /**
837           * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind}
838           */
839          public enum Kind
840              implements com.google.protobuf.Internal.EnumLite {
841            /**
842             * <code>CLASS = 0;</code>
843             */
844            CLASS(0, 0),
845            /**
846             * <code>PACKAGE = 1;</code>
847             */
848            PACKAGE(1, 1),
849            ;
850    
851            /**
852             * <code>CLASS = 0;</code>
853             */
854            public static final int CLASS_VALUE = 0;
855            /**
856             * <code>PACKAGE = 1;</code>
857             */
858            public static final int PACKAGE_VALUE = 1;
859    
860    
861            public final int getNumber() { return value; }
862    
863            public static Kind valueOf(int value) {
864              switch (value) {
865                case 0: return CLASS;
866                case 1: return PACKAGE;
867                default: return null;
868              }
869            }
870    
871            public static com.google.protobuf.Internal.EnumLiteMap<Kind>
872                internalGetValueMap() {
873              return internalValueMap;
874            }
875            private static com.google.protobuf.Internal.EnumLiteMap<Kind>
876                internalValueMap =
877                  new com.google.protobuf.Internal.EnumLiteMap<Kind>() {
878                    public Kind findValueByNumber(int number) {
879                      return Kind.valueOf(number);
880                    }
881                  };
882    
883            private final int value;
884    
885            private Kind(int index, int value) {
886              this.value = value;
887            }
888    
889            // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind)
890          }
891    
892          private int bitField0_;
893          // optional int32 parent_qualified_name = 1 [default = -1];
894          public static final int PARENT_QUALIFIED_NAME_FIELD_NUMBER = 1;
895          private int parentQualifiedName_;
896          /**
897           * <code>optional int32 parent_qualified_name = 1 [default = -1];</code>
898           */
899          public boolean hasParentQualifiedName() {
900            return ((bitField0_ & 0x00000001) == 0x00000001);
901          }
902          /**
903           * <code>optional int32 parent_qualified_name = 1 [default = -1];</code>
904           */
905          public int getParentQualifiedName() {
906            return parentQualifiedName_;
907          }
908    
909          // required int32 short_name = 2;
910          public static final int SHORT_NAME_FIELD_NUMBER = 2;
911          private int shortName_;
912          /**
913           * <code>required int32 short_name = 2;</code>
914           */
915          public boolean hasShortName() {
916            return ((bitField0_ & 0x00000002) == 0x00000002);
917          }
918          /**
919           * <code>required int32 short_name = 2;</code>
920           */
921          public int getShortName() {
922            return shortName_;
923          }
924    
925          // optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];
926          public static final int KIND_FIELD_NUMBER = 3;
927          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind kind_;
928          /**
929           * <code>optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];</code>
930           */
931          public boolean hasKind() {
932            return ((bitField0_ & 0x00000004) == 0x00000004);
933          }
934          /**
935           * <code>optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];</code>
936           */
937          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind getKind() {
938            return kind_;
939          }
940    
941          private void initFields() {
942            parentQualifiedName_ = -1;
943            shortName_ = 0;
944            kind_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind.PACKAGE;
945          }
946          private byte memoizedIsInitialized = -1;
947          public final boolean isInitialized() {
948            byte isInitialized = memoizedIsInitialized;
949            if (isInitialized != -1) return isInitialized == 1;
950    
951            if (!hasShortName()) {
952              memoizedIsInitialized = 0;
953              return false;
954            }
955            memoizedIsInitialized = 1;
956            return true;
957          }
958    
959          public void writeTo(com.google.protobuf.CodedOutputStream output)
960                              throws java.io.IOException {
961            getSerializedSize();
962            if (((bitField0_ & 0x00000001) == 0x00000001)) {
963              output.writeInt32(1, parentQualifiedName_);
964            }
965            if (((bitField0_ & 0x00000002) == 0x00000002)) {
966              output.writeInt32(2, shortName_);
967            }
968            if (((bitField0_ & 0x00000004) == 0x00000004)) {
969              output.writeEnum(3, kind_.getNumber());
970            }
971          }
972    
973          private int memoizedSerializedSize = -1;
974          public int getSerializedSize() {
975            int size = memoizedSerializedSize;
976            if (size != -1) return size;
977    
978            size = 0;
979            if (((bitField0_ & 0x00000001) == 0x00000001)) {
980              size += com.google.protobuf.CodedOutputStream
981                .computeInt32Size(1, parentQualifiedName_);
982            }
983            if (((bitField0_ & 0x00000002) == 0x00000002)) {
984              size += com.google.protobuf.CodedOutputStream
985                .computeInt32Size(2, shortName_);
986            }
987            if (((bitField0_ & 0x00000004) == 0x00000004)) {
988              size += com.google.protobuf.CodedOutputStream
989                .computeEnumSize(3, kind_.getNumber());
990            }
991            memoizedSerializedSize = size;
992            return size;
993          }
994    
995          private static final long serialVersionUID = 0L;
996          @java.lang.Override
997          protected java.lang.Object writeReplace()
998              throws java.io.ObjectStreamException {
999            return super.writeReplace();
1000          }
1001    
1002          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseFrom(
1003              com.google.protobuf.ByteString data)
1004              throws com.google.protobuf.InvalidProtocolBufferException {
1005            return PARSER.parseFrom(data);
1006          }
1007          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseFrom(
1008              com.google.protobuf.ByteString data,
1009              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1010              throws com.google.protobuf.InvalidProtocolBufferException {
1011            return PARSER.parseFrom(data, extensionRegistry);
1012          }
1013          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseFrom(byte[] data)
1014              throws com.google.protobuf.InvalidProtocolBufferException {
1015            return PARSER.parseFrom(data);
1016          }
1017          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseFrom(
1018              byte[] data,
1019              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1020              throws com.google.protobuf.InvalidProtocolBufferException {
1021            return PARSER.parseFrom(data, extensionRegistry);
1022          }
1023          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseFrom(java.io.InputStream input)
1024              throws java.io.IOException {
1025            return PARSER.parseFrom(input);
1026          }
1027          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseFrom(
1028              java.io.InputStream input,
1029              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1030              throws java.io.IOException {
1031            return PARSER.parseFrom(input, extensionRegistry);
1032          }
1033          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseDelimitedFrom(java.io.InputStream input)
1034              throws java.io.IOException {
1035            return PARSER.parseDelimitedFrom(input);
1036          }
1037          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseDelimitedFrom(
1038              java.io.InputStream input,
1039              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1040              throws java.io.IOException {
1041            return PARSER.parseDelimitedFrom(input, extensionRegistry);
1042          }
1043          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseFrom(
1044              com.google.protobuf.CodedInputStream input)
1045              throws java.io.IOException {
1046            return PARSER.parseFrom(input);
1047          }
1048          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parseFrom(
1049              com.google.protobuf.CodedInputStream input,
1050              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1051              throws java.io.IOException {
1052            return PARSER.parseFrom(input, extensionRegistry);
1053          }
1054    
1055          public static Builder newBuilder() { return Builder.create(); }
1056          public Builder newBuilderForType() { return newBuilder(); }
1057          public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName prototype) {
1058            return newBuilder().mergeFrom(prototype);
1059          }
1060          public Builder toBuilder() { return newBuilder(this); }
1061    
1062          /**
1063           * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName}
1064           */
1065          public static final class Builder extends
1066              com.google.protobuf.GeneratedMessageLite.Builder<
1067                org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName, Builder>
1068              implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedNameOrBuilder {
1069            // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.newBuilder()
1070            private Builder() {
1071              maybeForceBuilderInitialization();
1072            }
1073    
1074            private void maybeForceBuilderInitialization() {
1075            }
1076            private static Builder create() {
1077              return new Builder();
1078            }
1079    
1080            public Builder clear() {
1081              super.clear();
1082              parentQualifiedName_ = -1;
1083              bitField0_ = (bitField0_ & ~0x00000001);
1084              shortName_ = 0;
1085              bitField0_ = (bitField0_ & ~0x00000002);
1086              kind_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind.PACKAGE;
1087              bitField0_ = (bitField0_ & ~0x00000004);
1088              return this;
1089            }
1090    
1091            public Builder clone() {
1092              return create().mergeFrom(buildPartial());
1093            }
1094    
1095            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName getDefaultInstanceForType() {
1096              return org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.getDefaultInstance();
1097            }
1098    
1099            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName build() {
1100              org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName result = buildPartial();
1101              if (!result.isInitialized()) {
1102                throw newUninitializedMessageException(result);
1103              }
1104              return result;
1105            }
1106    
1107            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName buildPartial() {
1108              org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName(this);
1109              int from_bitField0_ = bitField0_;
1110              int to_bitField0_ = 0;
1111              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
1112                to_bitField0_ |= 0x00000001;
1113              }
1114              result.parentQualifiedName_ = parentQualifiedName_;
1115              if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
1116                to_bitField0_ |= 0x00000002;
1117              }
1118              result.shortName_ = shortName_;
1119              if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
1120                to_bitField0_ |= 0x00000004;
1121              }
1122              result.kind_ = kind_;
1123              result.bitField0_ = to_bitField0_;
1124              return result;
1125            }
1126    
1127            public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName other) {
1128              if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.getDefaultInstance()) return this;
1129              if (other.hasParentQualifiedName()) {
1130                setParentQualifiedName(other.getParentQualifiedName());
1131              }
1132              if (other.hasShortName()) {
1133                setShortName(other.getShortName());
1134              }
1135              if (other.hasKind()) {
1136                setKind(other.getKind());
1137              }
1138              return this;
1139            }
1140    
1141            public final boolean isInitialized() {
1142              if (!hasShortName()) {
1143                
1144                return false;
1145              }
1146              return true;
1147            }
1148    
1149            public Builder mergeFrom(
1150                com.google.protobuf.CodedInputStream input,
1151                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1152                throws java.io.IOException {
1153              org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName parsedMessage = null;
1154              try {
1155                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
1156              } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1157                parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName) e.getUnfinishedMessage();
1158                throw e;
1159              } finally {
1160                if (parsedMessage != null) {
1161                  mergeFrom(parsedMessage);
1162                }
1163              }
1164              return this;
1165            }
1166            private int bitField0_;
1167    
1168            // optional int32 parent_qualified_name = 1 [default = -1];
1169            private int parentQualifiedName_ = -1;
1170            /**
1171             * <code>optional int32 parent_qualified_name = 1 [default = -1];</code>
1172             */
1173            public boolean hasParentQualifiedName() {
1174              return ((bitField0_ & 0x00000001) == 0x00000001);
1175            }
1176            /**
1177             * <code>optional int32 parent_qualified_name = 1 [default = -1];</code>
1178             */
1179            public int getParentQualifiedName() {
1180              return parentQualifiedName_;
1181            }
1182            /**
1183             * <code>optional int32 parent_qualified_name = 1 [default = -1];</code>
1184             */
1185            public Builder setParentQualifiedName(int value) {
1186              bitField0_ |= 0x00000001;
1187              parentQualifiedName_ = value;
1188              
1189              return this;
1190            }
1191            /**
1192             * <code>optional int32 parent_qualified_name = 1 [default = -1];</code>
1193             */
1194            public Builder clearParentQualifiedName() {
1195              bitField0_ = (bitField0_ & ~0x00000001);
1196              parentQualifiedName_ = -1;
1197              
1198              return this;
1199            }
1200    
1201            // required int32 short_name = 2;
1202            private int shortName_ ;
1203            /**
1204             * <code>required int32 short_name = 2;</code>
1205             */
1206            public boolean hasShortName() {
1207              return ((bitField0_ & 0x00000002) == 0x00000002);
1208            }
1209            /**
1210             * <code>required int32 short_name = 2;</code>
1211             */
1212            public int getShortName() {
1213              return shortName_;
1214            }
1215            /**
1216             * <code>required int32 short_name = 2;</code>
1217             */
1218            public Builder setShortName(int value) {
1219              bitField0_ |= 0x00000002;
1220              shortName_ = value;
1221              
1222              return this;
1223            }
1224            /**
1225             * <code>required int32 short_name = 2;</code>
1226             */
1227            public Builder clearShortName() {
1228              bitField0_ = (bitField0_ & ~0x00000002);
1229              shortName_ = 0;
1230              
1231              return this;
1232            }
1233    
1234            // optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];
1235            private org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind kind_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind.PACKAGE;
1236            /**
1237             * <code>optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];</code>
1238             */
1239            public boolean hasKind() {
1240              return ((bitField0_ & 0x00000004) == 0x00000004);
1241            }
1242            /**
1243             * <code>optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];</code>
1244             */
1245            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind getKind() {
1246              return kind_;
1247            }
1248            /**
1249             * <code>optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];</code>
1250             */
1251            public Builder setKind(org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind value) {
1252              if (value == null) {
1253                throw new NullPointerException();
1254              }
1255              bitField0_ |= 0x00000004;
1256              kind_ = value;
1257              
1258              return this;
1259            }
1260            /**
1261             * <code>optional .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName.Kind kind = 3 [default = PACKAGE];</code>
1262             */
1263            public Builder clearKind() {
1264              bitField0_ = (bitField0_ & ~0x00000004);
1265              kind_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Kind.PACKAGE;
1266              
1267              return this;
1268            }
1269    
1270            // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName)
1271          }
1272    
1273          static {
1274            defaultInstance = new QualifiedName(true);
1275            defaultInstance.initFields();
1276          }
1277    
1278          // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName)
1279        }
1280    
1281        // repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;
1282        public static final int QUALIFIED_NAME_FIELD_NUMBER = 1;
1283        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName> qualifiedName_;
1284        /**
1285         * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1286         */
1287        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName> getQualifiedNameList() {
1288          return qualifiedName_;
1289        }
1290        /**
1291         * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1292         */
1293        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedNameOrBuilder> 
1294            getQualifiedNameOrBuilderList() {
1295          return qualifiedName_;
1296        }
1297        /**
1298         * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1299         */
1300        public int getQualifiedNameCount() {
1301          return qualifiedName_.size();
1302        }
1303        /**
1304         * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1305         */
1306        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName getQualifiedName(int index) {
1307          return qualifiedName_.get(index);
1308        }
1309        /**
1310         * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1311         */
1312        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedNameOrBuilder getQualifiedNameOrBuilder(
1313            int index) {
1314          return qualifiedName_.get(index);
1315        }
1316    
1317        private void initFields() {
1318          qualifiedName_ = java.util.Collections.emptyList();
1319        }
1320        private byte memoizedIsInitialized = -1;
1321        public final boolean isInitialized() {
1322          byte isInitialized = memoizedIsInitialized;
1323          if (isInitialized != -1) return isInitialized == 1;
1324    
1325          for (int i = 0; i < getQualifiedNameCount(); i++) {
1326            if (!getQualifiedName(i).isInitialized()) {
1327              memoizedIsInitialized = 0;
1328              return false;
1329            }
1330          }
1331          memoizedIsInitialized = 1;
1332          return true;
1333        }
1334    
1335        public void writeTo(com.google.protobuf.CodedOutputStream output)
1336                            throws java.io.IOException {
1337          getSerializedSize();
1338          for (int i = 0; i < qualifiedName_.size(); i++) {
1339            output.writeMessage(1, qualifiedName_.get(i));
1340          }
1341        }
1342    
1343        private int memoizedSerializedSize = -1;
1344        public int getSerializedSize() {
1345          int size = memoizedSerializedSize;
1346          if (size != -1) return size;
1347    
1348          size = 0;
1349          for (int i = 0; i < qualifiedName_.size(); i++) {
1350            size += com.google.protobuf.CodedOutputStream
1351              .computeMessageSize(1, qualifiedName_.get(i));
1352          }
1353          memoizedSerializedSize = size;
1354          return size;
1355        }
1356    
1357        private static final long serialVersionUID = 0L;
1358        @java.lang.Override
1359        protected java.lang.Object writeReplace()
1360            throws java.io.ObjectStreamException {
1361          return super.writeReplace();
1362        }
1363    
1364        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseFrom(
1365            com.google.protobuf.ByteString data)
1366            throws com.google.protobuf.InvalidProtocolBufferException {
1367          return PARSER.parseFrom(data);
1368        }
1369        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseFrom(
1370            com.google.protobuf.ByteString data,
1371            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1372            throws com.google.protobuf.InvalidProtocolBufferException {
1373          return PARSER.parseFrom(data, extensionRegistry);
1374        }
1375        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseFrom(byte[] data)
1376            throws com.google.protobuf.InvalidProtocolBufferException {
1377          return PARSER.parseFrom(data);
1378        }
1379        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseFrom(
1380            byte[] data,
1381            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1382            throws com.google.protobuf.InvalidProtocolBufferException {
1383          return PARSER.parseFrom(data, extensionRegistry);
1384        }
1385        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseFrom(java.io.InputStream input)
1386            throws java.io.IOException {
1387          return PARSER.parseFrom(input);
1388        }
1389        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseFrom(
1390            java.io.InputStream input,
1391            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1392            throws java.io.IOException {
1393          return PARSER.parseFrom(input, extensionRegistry);
1394        }
1395        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseDelimitedFrom(java.io.InputStream input)
1396            throws java.io.IOException {
1397          return PARSER.parseDelimitedFrom(input);
1398        }
1399        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseDelimitedFrom(
1400            java.io.InputStream input,
1401            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1402            throws java.io.IOException {
1403          return PARSER.parseDelimitedFrom(input, extensionRegistry);
1404        }
1405        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseFrom(
1406            com.google.protobuf.CodedInputStream input)
1407            throws java.io.IOException {
1408          return PARSER.parseFrom(input);
1409        }
1410        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parseFrom(
1411            com.google.protobuf.CodedInputStream input,
1412            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1413            throws java.io.IOException {
1414          return PARSER.parseFrom(input, extensionRegistry);
1415        }
1416    
1417        public static Builder newBuilder() { return Builder.create(); }
1418        public Builder newBuilderForType() { return newBuilder(); }
1419        public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable prototype) {
1420          return newBuilder().mergeFrom(prototype);
1421        }
1422        public Builder toBuilder() { return newBuilder(this); }
1423    
1424        /**
1425         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.QualifiedNameTable}
1426         */
1427        public static final class Builder extends
1428            com.google.protobuf.GeneratedMessageLite.Builder<
1429              org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable, Builder>
1430            implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTableOrBuilder {
1431          // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.newBuilder()
1432          private Builder() {
1433            maybeForceBuilderInitialization();
1434          }
1435    
1436          private void maybeForceBuilderInitialization() {
1437          }
1438          private static Builder create() {
1439            return new Builder();
1440          }
1441    
1442          public Builder clear() {
1443            super.clear();
1444            qualifiedName_ = java.util.Collections.emptyList();
1445            bitField0_ = (bitField0_ & ~0x00000001);
1446            return this;
1447          }
1448    
1449          public Builder clone() {
1450            return create().mergeFrom(buildPartial());
1451          }
1452    
1453          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable getDefaultInstanceForType() {
1454            return org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.getDefaultInstance();
1455          }
1456    
1457          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable build() {
1458            org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable result = buildPartial();
1459            if (!result.isInitialized()) {
1460              throw newUninitializedMessageException(result);
1461            }
1462            return result;
1463          }
1464    
1465          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable buildPartial() {
1466            org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable(this);
1467            int from_bitField0_ = bitField0_;
1468            if (((bitField0_ & 0x00000001) == 0x00000001)) {
1469              qualifiedName_ = java.util.Collections.unmodifiableList(qualifiedName_);
1470              bitField0_ = (bitField0_ & ~0x00000001);
1471            }
1472            result.qualifiedName_ = qualifiedName_;
1473            return result;
1474          }
1475    
1476          public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable other) {
1477            if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.getDefaultInstance()) return this;
1478            if (!other.qualifiedName_.isEmpty()) {
1479              if (qualifiedName_.isEmpty()) {
1480                qualifiedName_ = other.qualifiedName_;
1481                bitField0_ = (bitField0_ & ~0x00000001);
1482              } else {
1483                ensureQualifiedNameIsMutable();
1484                qualifiedName_.addAll(other.qualifiedName_);
1485              }
1486              
1487            }
1488            return this;
1489          }
1490    
1491          public final boolean isInitialized() {
1492            for (int i = 0; i < getQualifiedNameCount(); i++) {
1493              if (!getQualifiedName(i).isInitialized()) {
1494                
1495                return false;
1496              }
1497            }
1498            return true;
1499          }
1500    
1501          public Builder mergeFrom(
1502              com.google.protobuf.CodedInputStream input,
1503              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1504              throws java.io.IOException {
1505            org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable parsedMessage = null;
1506            try {
1507              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
1508            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1509              parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable) e.getUnfinishedMessage();
1510              throw e;
1511            } finally {
1512              if (parsedMessage != null) {
1513                mergeFrom(parsedMessage);
1514              }
1515            }
1516            return this;
1517          }
1518          private int bitField0_;
1519    
1520          // repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;
1521          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName> qualifiedName_ =
1522            java.util.Collections.emptyList();
1523          private void ensureQualifiedNameIsMutable() {
1524            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
1525              qualifiedName_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName>(qualifiedName_);
1526              bitField0_ |= 0x00000001;
1527             }
1528          }
1529    
1530          /**
1531           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1532           */
1533          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName> getQualifiedNameList() {
1534            return java.util.Collections.unmodifiableList(qualifiedName_);
1535          }
1536          /**
1537           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1538           */
1539          public int getQualifiedNameCount() {
1540            return qualifiedName_.size();
1541          }
1542          /**
1543           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1544           */
1545          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName getQualifiedName(int index) {
1546            return qualifiedName_.get(index);
1547          }
1548          /**
1549           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1550           */
1551          public Builder setQualifiedName(
1552              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName value) {
1553            if (value == null) {
1554              throw new NullPointerException();
1555            }
1556            ensureQualifiedNameIsMutable();
1557            qualifiedName_.set(index, value);
1558    
1559            return this;
1560          }
1561          /**
1562           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1563           */
1564          public Builder setQualifiedName(
1565              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Builder builderForValue) {
1566            ensureQualifiedNameIsMutable();
1567            qualifiedName_.set(index, builderForValue.build());
1568    
1569            return this;
1570          }
1571          /**
1572           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1573           */
1574          public Builder addQualifiedName(org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName value) {
1575            if (value == null) {
1576              throw new NullPointerException();
1577            }
1578            ensureQualifiedNameIsMutable();
1579            qualifiedName_.add(value);
1580    
1581            return this;
1582          }
1583          /**
1584           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1585           */
1586          public Builder addQualifiedName(
1587              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName value) {
1588            if (value == null) {
1589              throw new NullPointerException();
1590            }
1591            ensureQualifiedNameIsMutable();
1592            qualifiedName_.add(index, value);
1593    
1594            return this;
1595          }
1596          /**
1597           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1598           */
1599          public Builder addQualifiedName(
1600              org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Builder builderForValue) {
1601            ensureQualifiedNameIsMutable();
1602            qualifiedName_.add(builderForValue.build());
1603    
1604            return this;
1605          }
1606          /**
1607           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1608           */
1609          public Builder addQualifiedName(
1610              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName.Builder builderForValue) {
1611            ensureQualifiedNameIsMutable();
1612            qualifiedName_.add(index, builderForValue.build());
1613    
1614            return this;
1615          }
1616          /**
1617           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1618           */
1619          public Builder addAllQualifiedName(
1620              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.QualifiedNameTable.QualifiedName> values) {
1621            ensureQualifiedNameIsMutable();
1622            super.addAll(values, qualifiedName_);
1623    
1624            return this;
1625          }
1626          /**
1627           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1628           */
1629          public Builder clearQualifiedName() {
1630            qualifiedName_ = java.util.Collections.emptyList();
1631            bitField0_ = (bitField0_ & ~0x00000001);
1632    
1633            return this;
1634          }
1635          /**
1636           * <code>repeated .org.jetbrains.jet.descriptors.serialization.QualifiedNameTable.QualifiedName qualified_name = 1;</code>
1637           */
1638          public Builder removeQualifiedName(int index) {
1639            ensureQualifiedNameIsMutable();
1640            qualifiedName_.remove(index);
1641    
1642            return this;
1643          }
1644    
1645          // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.QualifiedNameTable)
1646        }
1647    
1648        static {
1649          defaultInstance = new QualifiedNameTable(true);
1650          defaultInstance.initFields();
1651        }
1652    
1653        // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.QualifiedNameTable)
1654      }
1655    
1656      public interface TypeOrBuilder
1657          extends com.google.protobuf.MessageLiteOrBuilder {
1658    
1659        // required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;
1660        /**
1661         * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
1662         */
1663        boolean hasConstructor();
1664        /**
1665         * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
1666         */
1667        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor getConstructor();
1668    
1669        // repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;
1670        /**
1671         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
1672         */
1673        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument> 
1674            getArgumentList();
1675        /**
1676         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
1677         */
1678        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument getArgument(int index);
1679        /**
1680         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
1681         */
1682        int getArgumentCount();
1683    
1684        // optional bool nullable = 3 [default = false];
1685        /**
1686         * <code>optional bool nullable = 3 [default = false];</code>
1687         */
1688        boolean hasNullable();
1689        /**
1690         * <code>optional bool nullable = 3 [default = false];</code>
1691         */
1692        boolean getNullable();
1693      }
1694      /**
1695       * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Type}
1696       */
1697      public static final class Type extends
1698          com.google.protobuf.GeneratedMessageLite
1699          implements TypeOrBuilder {
1700        // Use Type.newBuilder() to construct.
1701        private Type(com.google.protobuf.GeneratedMessageLite.Builder builder) {
1702          super(builder);
1703    
1704        }
1705        private Type(boolean noInit) {}
1706    
1707        private static final Type defaultInstance;
1708        public static Type getDefaultInstance() {
1709          return defaultInstance;
1710        }
1711    
1712        public Type getDefaultInstanceForType() {
1713          return defaultInstance;
1714        }
1715    
1716        private Type(
1717            com.google.protobuf.CodedInputStream input,
1718            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1719            throws com.google.protobuf.InvalidProtocolBufferException {
1720          initFields();
1721          int mutable_bitField0_ = 0;
1722          try {
1723            boolean done = false;
1724            while (!done) {
1725              int tag = input.readTag();
1726              switch (tag) {
1727                case 0:
1728                  done = true;
1729                  break;
1730                default: {
1731                  if (!parseUnknownField(input,
1732                                         extensionRegistry, tag)) {
1733                    done = true;
1734                  }
1735                  break;
1736                }
1737                case 10: {
1738                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Builder subBuilder = null;
1739                  if (((bitField0_ & 0x00000001) == 0x00000001)) {
1740                    subBuilder = constructor_.toBuilder();
1741                  }
1742                  constructor_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.PARSER, extensionRegistry);
1743                  if (subBuilder != null) {
1744                    subBuilder.mergeFrom(constructor_);
1745                    constructor_ = subBuilder.buildPartial();
1746                  }
1747                  bitField0_ |= 0x00000001;
1748                  break;
1749                }
1750                case 18: {
1751                  if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
1752                    argument_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument>();
1753                    mutable_bitField0_ |= 0x00000002;
1754                  }
1755                  argument_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.PARSER, extensionRegistry));
1756                  break;
1757                }
1758                case 24: {
1759                  bitField0_ |= 0x00000002;
1760                  nullable_ = input.readBool();
1761                  break;
1762                }
1763              }
1764            }
1765          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1766            throw e.setUnfinishedMessage(this);
1767          } catch (java.io.IOException e) {
1768            throw new com.google.protobuf.InvalidProtocolBufferException(
1769                e.getMessage()).setUnfinishedMessage(this);
1770          } finally {
1771            if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
1772              argument_ = java.util.Collections.unmodifiableList(argument_);
1773            }
1774            makeExtensionsImmutable();
1775          }
1776        }
1777        public static com.google.protobuf.Parser<Type> PARSER =
1778            new com.google.protobuf.AbstractParser<Type>() {
1779          public Type parsePartialFrom(
1780              com.google.protobuf.CodedInputStream input,
1781              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1782              throws com.google.protobuf.InvalidProtocolBufferException {
1783            return new Type(input, extensionRegistry);
1784          }
1785        };
1786    
1787        @java.lang.Override
1788        public com.google.protobuf.Parser<Type> getParserForType() {
1789          return PARSER;
1790        }
1791    
1792        public interface ConstructorOrBuilder
1793            extends com.google.protobuf.MessageLiteOrBuilder {
1794    
1795          // optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];
1796          /**
1797           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];</code>
1798           */
1799          boolean hasKind();
1800          /**
1801           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];</code>
1802           */
1803          org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind getKind();
1804    
1805          // required int32 id = 2;
1806          /**
1807           * <code>required int32 id = 2;</code>
1808           *
1809           * <pre>
1810           * CLASS - fqName id, TYPE_PARAMETER - type parameter id
1811           * </pre>
1812           */
1813          boolean hasId();
1814          /**
1815           * <code>required int32 id = 2;</code>
1816           *
1817           * <pre>
1818           * CLASS - fqName id, TYPE_PARAMETER - type parameter id
1819           * </pre>
1820           */
1821          int getId();
1822        }
1823        /**
1824         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Type.Constructor}
1825         */
1826        public static final class Constructor extends
1827            com.google.protobuf.GeneratedMessageLite
1828            implements ConstructorOrBuilder {
1829          // Use Constructor.newBuilder() to construct.
1830          private Constructor(com.google.protobuf.GeneratedMessageLite.Builder builder) {
1831            super(builder);
1832    
1833          }
1834          private Constructor(boolean noInit) {}
1835    
1836          private static final Constructor defaultInstance;
1837          public static Constructor getDefaultInstance() {
1838            return defaultInstance;
1839          }
1840    
1841          public Constructor getDefaultInstanceForType() {
1842            return defaultInstance;
1843          }
1844    
1845          private Constructor(
1846              com.google.protobuf.CodedInputStream input,
1847              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1848              throws com.google.protobuf.InvalidProtocolBufferException {
1849            initFields();
1850            int mutable_bitField0_ = 0;
1851            try {
1852              boolean done = false;
1853              while (!done) {
1854                int tag = input.readTag();
1855                switch (tag) {
1856                  case 0:
1857                    done = true;
1858                    break;
1859                  default: {
1860                    if (!parseUnknownField(input,
1861                                           extensionRegistry, tag)) {
1862                      done = true;
1863                    }
1864                    break;
1865                  }
1866                  case 8: {
1867                    int rawValue = input.readEnum();
1868                    org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind value = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind.valueOf(rawValue);
1869                    if (value != null) {
1870                      bitField0_ |= 0x00000001;
1871                      kind_ = value;
1872                    }
1873                    break;
1874                  }
1875                  case 16: {
1876                    bitField0_ |= 0x00000002;
1877                    id_ = input.readInt32();
1878                    break;
1879                  }
1880                }
1881              }
1882            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1883              throw e.setUnfinishedMessage(this);
1884            } catch (java.io.IOException e) {
1885              throw new com.google.protobuf.InvalidProtocolBufferException(
1886                  e.getMessage()).setUnfinishedMessage(this);
1887            } finally {
1888              makeExtensionsImmutable();
1889            }
1890          }
1891          public static com.google.protobuf.Parser<Constructor> PARSER =
1892              new com.google.protobuf.AbstractParser<Constructor>() {
1893            public Constructor parsePartialFrom(
1894                com.google.protobuf.CodedInputStream input,
1895                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1896                throws com.google.protobuf.InvalidProtocolBufferException {
1897              return new Constructor(input, extensionRegistry);
1898            }
1899          };
1900    
1901          @java.lang.Override
1902          public com.google.protobuf.Parser<Constructor> getParserForType() {
1903            return PARSER;
1904          }
1905    
1906          /**
1907           * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind}
1908           */
1909          public enum Kind
1910              implements com.google.protobuf.Internal.EnumLite {
1911            /**
1912             * <code>CLASS = 0;</code>
1913             */
1914            CLASS(0, 0),
1915            /**
1916             * <code>TYPE_PARAMETER = 1;</code>
1917             */
1918            TYPE_PARAMETER(1, 1),
1919            ;
1920    
1921            /**
1922             * <code>CLASS = 0;</code>
1923             */
1924            public static final int CLASS_VALUE = 0;
1925            /**
1926             * <code>TYPE_PARAMETER = 1;</code>
1927             */
1928            public static final int TYPE_PARAMETER_VALUE = 1;
1929    
1930    
1931            public final int getNumber() { return value; }
1932    
1933            public static Kind valueOf(int value) {
1934              switch (value) {
1935                case 0: return CLASS;
1936                case 1: return TYPE_PARAMETER;
1937                default: return null;
1938              }
1939            }
1940    
1941            public static com.google.protobuf.Internal.EnumLiteMap<Kind>
1942                internalGetValueMap() {
1943              return internalValueMap;
1944            }
1945            private static com.google.protobuf.Internal.EnumLiteMap<Kind>
1946                internalValueMap =
1947                  new com.google.protobuf.Internal.EnumLiteMap<Kind>() {
1948                    public Kind findValueByNumber(int number) {
1949                      return Kind.valueOf(number);
1950                    }
1951                  };
1952    
1953            private final int value;
1954    
1955            private Kind(int index, int value) {
1956              this.value = value;
1957            }
1958    
1959            // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind)
1960          }
1961    
1962          private int bitField0_;
1963          // optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];
1964          public static final int KIND_FIELD_NUMBER = 1;
1965          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind kind_;
1966          /**
1967           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];</code>
1968           */
1969          public boolean hasKind() {
1970            return ((bitField0_ & 0x00000001) == 0x00000001);
1971          }
1972          /**
1973           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];</code>
1974           */
1975          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind getKind() {
1976            return kind_;
1977          }
1978    
1979          // required int32 id = 2;
1980          public static final int ID_FIELD_NUMBER = 2;
1981          private int id_;
1982          /**
1983           * <code>required int32 id = 2;</code>
1984           *
1985           * <pre>
1986           * CLASS - fqName id, TYPE_PARAMETER - type parameter id
1987           * </pre>
1988           */
1989          public boolean hasId() {
1990            return ((bitField0_ & 0x00000002) == 0x00000002);
1991          }
1992          /**
1993           * <code>required int32 id = 2;</code>
1994           *
1995           * <pre>
1996           * CLASS - fqName id, TYPE_PARAMETER - type parameter id
1997           * </pre>
1998           */
1999          public int getId() {
2000            return id_;
2001          }
2002    
2003          private void initFields() {
2004            kind_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind.CLASS;
2005            id_ = 0;
2006          }
2007          private byte memoizedIsInitialized = -1;
2008          public final boolean isInitialized() {
2009            byte isInitialized = memoizedIsInitialized;
2010            if (isInitialized != -1) return isInitialized == 1;
2011    
2012            if (!hasId()) {
2013              memoizedIsInitialized = 0;
2014              return false;
2015            }
2016            memoizedIsInitialized = 1;
2017            return true;
2018          }
2019    
2020          public void writeTo(com.google.protobuf.CodedOutputStream output)
2021                              throws java.io.IOException {
2022            getSerializedSize();
2023            if (((bitField0_ & 0x00000001) == 0x00000001)) {
2024              output.writeEnum(1, kind_.getNumber());
2025            }
2026            if (((bitField0_ & 0x00000002) == 0x00000002)) {
2027              output.writeInt32(2, id_);
2028            }
2029          }
2030    
2031          private int memoizedSerializedSize = -1;
2032          public int getSerializedSize() {
2033            int size = memoizedSerializedSize;
2034            if (size != -1) return size;
2035    
2036            size = 0;
2037            if (((bitField0_ & 0x00000001) == 0x00000001)) {
2038              size += com.google.protobuf.CodedOutputStream
2039                .computeEnumSize(1, kind_.getNumber());
2040            }
2041            if (((bitField0_ & 0x00000002) == 0x00000002)) {
2042              size += com.google.protobuf.CodedOutputStream
2043                .computeInt32Size(2, id_);
2044            }
2045            memoizedSerializedSize = size;
2046            return size;
2047          }
2048    
2049          private static final long serialVersionUID = 0L;
2050          @java.lang.Override
2051          protected java.lang.Object writeReplace()
2052              throws java.io.ObjectStreamException {
2053            return super.writeReplace();
2054          }
2055    
2056          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseFrom(
2057              com.google.protobuf.ByteString data)
2058              throws com.google.protobuf.InvalidProtocolBufferException {
2059            return PARSER.parseFrom(data);
2060          }
2061          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseFrom(
2062              com.google.protobuf.ByteString data,
2063              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2064              throws com.google.protobuf.InvalidProtocolBufferException {
2065            return PARSER.parseFrom(data, extensionRegistry);
2066          }
2067          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseFrom(byte[] data)
2068              throws com.google.protobuf.InvalidProtocolBufferException {
2069            return PARSER.parseFrom(data);
2070          }
2071          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseFrom(
2072              byte[] data,
2073              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2074              throws com.google.protobuf.InvalidProtocolBufferException {
2075            return PARSER.parseFrom(data, extensionRegistry);
2076          }
2077          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseFrom(java.io.InputStream input)
2078              throws java.io.IOException {
2079            return PARSER.parseFrom(input);
2080          }
2081          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseFrom(
2082              java.io.InputStream input,
2083              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2084              throws java.io.IOException {
2085            return PARSER.parseFrom(input, extensionRegistry);
2086          }
2087          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseDelimitedFrom(java.io.InputStream input)
2088              throws java.io.IOException {
2089            return PARSER.parseDelimitedFrom(input);
2090          }
2091          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseDelimitedFrom(
2092              java.io.InputStream input,
2093              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2094              throws java.io.IOException {
2095            return PARSER.parseDelimitedFrom(input, extensionRegistry);
2096          }
2097          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseFrom(
2098              com.google.protobuf.CodedInputStream input)
2099              throws java.io.IOException {
2100            return PARSER.parseFrom(input);
2101          }
2102          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parseFrom(
2103              com.google.protobuf.CodedInputStream input,
2104              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2105              throws java.io.IOException {
2106            return PARSER.parseFrom(input, extensionRegistry);
2107          }
2108    
2109          public static Builder newBuilder() { return Builder.create(); }
2110          public Builder newBuilderForType() { return newBuilder(); }
2111          public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor prototype) {
2112            return newBuilder().mergeFrom(prototype);
2113          }
2114          public Builder toBuilder() { return newBuilder(this); }
2115    
2116          /**
2117           * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Type.Constructor}
2118           */
2119          public static final class Builder extends
2120              com.google.protobuf.GeneratedMessageLite.Builder<
2121                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor, Builder>
2122              implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.ConstructorOrBuilder {
2123            // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.newBuilder()
2124            private Builder() {
2125              maybeForceBuilderInitialization();
2126            }
2127    
2128            private void maybeForceBuilderInitialization() {
2129            }
2130            private static Builder create() {
2131              return new Builder();
2132            }
2133    
2134            public Builder clear() {
2135              super.clear();
2136              kind_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind.CLASS;
2137              bitField0_ = (bitField0_ & ~0x00000001);
2138              id_ = 0;
2139              bitField0_ = (bitField0_ & ~0x00000002);
2140              return this;
2141            }
2142    
2143            public Builder clone() {
2144              return create().mergeFrom(buildPartial());
2145            }
2146    
2147            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor getDefaultInstanceForType() {
2148              return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.getDefaultInstance();
2149            }
2150    
2151            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor build() {
2152              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor result = buildPartial();
2153              if (!result.isInitialized()) {
2154                throw newUninitializedMessageException(result);
2155              }
2156              return result;
2157            }
2158    
2159            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor buildPartial() {
2160              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor(this);
2161              int from_bitField0_ = bitField0_;
2162              int to_bitField0_ = 0;
2163              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
2164                to_bitField0_ |= 0x00000001;
2165              }
2166              result.kind_ = kind_;
2167              if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
2168                to_bitField0_ |= 0x00000002;
2169              }
2170              result.id_ = id_;
2171              result.bitField0_ = to_bitField0_;
2172              return result;
2173            }
2174    
2175            public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor other) {
2176              if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.getDefaultInstance()) return this;
2177              if (other.hasKind()) {
2178                setKind(other.getKind());
2179              }
2180              if (other.hasId()) {
2181                setId(other.getId());
2182              }
2183              return this;
2184            }
2185    
2186            public final boolean isInitialized() {
2187              if (!hasId()) {
2188                
2189                return false;
2190              }
2191              return true;
2192            }
2193    
2194            public Builder mergeFrom(
2195                com.google.protobuf.CodedInputStream input,
2196                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2197                throws java.io.IOException {
2198              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor parsedMessage = null;
2199              try {
2200                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2201              } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2202                parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor) e.getUnfinishedMessage();
2203                throw e;
2204              } finally {
2205                if (parsedMessage != null) {
2206                  mergeFrom(parsedMessage);
2207                }
2208              }
2209              return this;
2210            }
2211            private int bitField0_;
2212    
2213            // optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];
2214            private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind kind_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind.CLASS;
2215            /**
2216             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];</code>
2217             */
2218            public boolean hasKind() {
2219              return ((bitField0_ & 0x00000001) == 0x00000001);
2220            }
2221            /**
2222             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];</code>
2223             */
2224            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind getKind() {
2225              return kind_;
2226            }
2227            /**
2228             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];</code>
2229             */
2230            public Builder setKind(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind value) {
2231              if (value == null) {
2232                throw new NullPointerException();
2233              }
2234              bitField0_ |= 0x00000001;
2235              kind_ = value;
2236              
2237              return this;
2238            }
2239            /**
2240             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Constructor.Kind kind = 1 [default = CLASS];</code>
2241             */
2242            public Builder clearKind() {
2243              bitField0_ = (bitField0_ & ~0x00000001);
2244              kind_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Kind.CLASS;
2245              
2246              return this;
2247            }
2248    
2249            // required int32 id = 2;
2250            private int id_ ;
2251            /**
2252             * <code>required int32 id = 2;</code>
2253             *
2254             * <pre>
2255             * CLASS - fqName id, TYPE_PARAMETER - type parameter id
2256             * </pre>
2257             */
2258            public boolean hasId() {
2259              return ((bitField0_ & 0x00000002) == 0x00000002);
2260            }
2261            /**
2262             * <code>required int32 id = 2;</code>
2263             *
2264             * <pre>
2265             * CLASS - fqName id, TYPE_PARAMETER - type parameter id
2266             * </pre>
2267             */
2268            public int getId() {
2269              return id_;
2270            }
2271            /**
2272             * <code>required int32 id = 2;</code>
2273             *
2274             * <pre>
2275             * CLASS - fqName id, TYPE_PARAMETER - type parameter id
2276             * </pre>
2277             */
2278            public Builder setId(int value) {
2279              bitField0_ |= 0x00000002;
2280              id_ = value;
2281              
2282              return this;
2283            }
2284            /**
2285             * <code>required int32 id = 2;</code>
2286             *
2287             * <pre>
2288             * CLASS - fqName id, TYPE_PARAMETER - type parameter id
2289             * </pre>
2290             */
2291            public Builder clearId() {
2292              bitField0_ = (bitField0_ & ~0x00000002);
2293              id_ = 0;
2294              
2295              return this;
2296            }
2297    
2298            // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Type.Constructor)
2299          }
2300    
2301          static {
2302            defaultInstance = new Constructor(true);
2303            defaultInstance.initFields();
2304          }
2305    
2306          // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Type.Constructor)
2307        }
2308    
2309        public interface ArgumentOrBuilder
2310            extends com.google.protobuf.MessageLiteOrBuilder {
2311    
2312          // optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];
2313          /**
2314           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];</code>
2315           */
2316          boolean hasProjection();
2317          /**
2318           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];</code>
2319           */
2320          org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection getProjection();
2321    
2322          // required .org.jetbrains.jet.descriptors.serialization.Type type = 2;
2323          /**
2324           * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2325           */
2326          boolean hasType();
2327          /**
2328           * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2329           */
2330          org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getType();
2331        }
2332        /**
2333         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Type.Argument}
2334         */
2335        public static final class Argument extends
2336            com.google.protobuf.GeneratedMessageLite
2337            implements ArgumentOrBuilder {
2338          // Use Argument.newBuilder() to construct.
2339          private Argument(com.google.protobuf.GeneratedMessageLite.Builder builder) {
2340            super(builder);
2341    
2342          }
2343          private Argument(boolean noInit) {}
2344    
2345          private static final Argument defaultInstance;
2346          public static Argument getDefaultInstance() {
2347            return defaultInstance;
2348          }
2349    
2350          public Argument getDefaultInstanceForType() {
2351            return defaultInstance;
2352          }
2353    
2354          private Argument(
2355              com.google.protobuf.CodedInputStream input,
2356              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2357              throws com.google.protobuf.InvalidProtocolBufferException {
2358            initFields();
2359            int mutable_bitField0_ = 0;
2360            try {
2361              boolean done = false;
2362              while (!done) {
2363                int tag = input.readTag();
2364                switch (tag) {
2365                  case 0:
2366                    done = true;
2367                    break;
2368                  default: {
2369                    if (!parseUnknownField(input,
2370                                           extensionRegistry, tag)) {
2371                      done = true;
2372                    }
2373                    break;
2374                  }
2375                  case 8: {
2376                    int rawValue = input.readEnum();
2377                    org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection value = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection.valueOf(rawValue);
2378                    if (value != null) {
2379                      bitField0_ |= 0x00000001;
2380                      projection_ = value;
2381                    }
2382                    break;
2383                  }
2384                  case 18: {
2385                    org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder subBuilder = null;
2386                    if (((bitField0_ & 0x00000002) == 0x00000002)) {
2387                      subBuilder = type_.toBuilder();
2388                    }
2389                    type_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.PARSER, extensionRegistry);
2390                    if (subBuilder != null) {
2391                      subBuilder.mergeFrom(type_);
2392                      type_ = subBuilder.buildPartial();
2393                    }
2394                    bitField0_ |= 0x00000002;
2395                    break;
2396                  }
2397                }
2398              }
2399            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2400              throw e.setUnfinishedMessage(this);
2401            } catch (java.io.IOException e) {
2402              throw new com.google.protobuf.InvalidProtocolBufferException(
2403                  e.getMessage()).setUnfinishedMessage(this);
2404            } finally {
2405              makeExtensionsImmutable();
2406            }
2407          }
2408          public static com.google.protobuf.Parser<Argument> PARSER =
2409              new com.google.protobuf.AbstractParser<Argument>() {
2410            public Argument parsePartialFrom(
2411                com.google.protobuf.CodedInputStream input,
2412                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2413                throws com.google.protobuf.InvalidProtocolBufferException {
2414              return new Argument(input, extensionRegistry);
2415            }
2416          };
2417    
2418          @java.lang.Override
2419          public com.google.protobuf.Parser<Argument> getParserForType() {
2420            return PARSER;
2421          }
2422    
2423          /**
2424           * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection}
2425           */
2426          public enum Projection
2427              implements com.google.protobuf.Internal.EnumLite {
2428            /**
2429             * <code>IN = 0;</code>
2430             */
2431            IN(0, 0),
2432            /**
2433             * <code>OUT = 1;</code>
2434             */
2435            OUT(1, 1),
2436            /**
2437             * <code>INV = 2;</code>
2438             */
2439            INV(2, 2),
2440            ;
2441    
2442            /**
2443             * <code>IN = 0;</code>
2444             */
2445            public static final int IN_VALUE = 0;
2446            /**
2447             * <code>OUT = 1;</code>
2448             */
2449            public static final int OUT_VALUE = 1;
2450            /**
2451             * <code>INV = 2;</code>
2452             */
2453            public static final int INV_VALUE = 2;
2454    
2455    
2456            public final int getNumber() { return value; }
2457    
2458            public static Projection valueOf(int value) {
2459              switch (value) {
2460                case 0: return IN;
2461                case 1: return OUT;
2462                case 2: return INV;
2463                default: return null;
2464              }
2465            }
2466    
2467            public static com.google.protobuf.Internal.EnumLiteMap<Projection>
2468                internalGetValueMap() {
2469              return internalValueMap;
2470            }
2471            private static com.google.protobuf.Internal.EnumLiteMap<Projection>
2472                internalValueMap =
2473                  new com.google.protobuf.Internal.EnumLiteMap<Projection>() {
2474                    public Projection findValueByNumber(int number) {
2475                      return Projection.valueOf(number);
2476                    }
2477                  };
2478    
2479            private final int value;
2480    
2481            private Projection(int index, int value) {
2482              this.value = value;
2483            }
2484    
2485            // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection)
2486          }
2487    
2488          private int bitField0_;
2489          // optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];
2490          public static final int PROJECTION_FIELD_NUMBER = 1;
2491          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection projection_;
2492          /**
2493           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];</code>
2494           */
2495          public boolean hasProjection() {
2496            return ((bitField0_ & 0x00000001) == 0x00000001);
2497          }
2498          /**
2499           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];</code>
2500           */
2501          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection getProjection() {
2502            return projection_;
2503          }
2504    
2505          // required .org.jetbrains.jet.descriptors.serialization.Type type = 2;
2506          public static final int TYPE_FIELD_NUMBER = 2;
2507          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type type_;
2508          /**
2509           * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2510           */
2511          public boolean hasType() {
2512            return ((bitField0_ & 0x00000002) == 0x00000002);
2513          }
2514          /**
2515           * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2516           */
2517          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getType() {
2518            return type_;
2519          }
2520    
2521          private void initFields() {
2522            projection_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection.INV;
2523            type_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
2524          }
2525          private byte memoizedIsInitialized = -1;
2526          public final boolean isInitialized() {
2527            byte isInitialized = memoizedIsInitialized;
2528            if (isInitialized != -1) return isInitialized == 1;
2529    
2530            if (!hasType()) {
2531              memoizedIsInitialized = 0;
2532              return false;
2533            }
2534            if (!getType().isInitialized()) {
2535              memoizedIsInitialized = 0;
2536              return false;
2537            }
2538            memoizedIsInitialized = 1;
2539            return true;
2540          }
2541    
2542          public void writeTo(com.google.protobuf.CodedOutputStream output)
2543                              throws java.io.IOException {
2544            getSerializedSize();
2545            if (((bitField0_ & 0x00000001) == 0x00000001)) {
2546              output.writeEnum(1, projection_.getNumber());
2547            }
2548            if (((bitField0_ & 0x00000002) == 0x00000002)) {
2549              output.writeMessage(2, type_);
2550            }
2551          }
2552    
2553          private int memoizedSerializedSize = -1;
2554          public int getSerializedSize() {
2555            int size = memoizedSerializedSize;
2556            if (size != -1) return size;
2557    
2558            size = 0;
2559            if (((bitField0_ & 0x00000001) == 0x00000001)) {
2560              size += com.google.protobuf.CodedOutputStream
2561                .computeEnumSize(1, projection_.getNumber());
2562            }
2563            if (((bitField0_ & 0x00000002) == 0x00000002)) {
2564              size += com.google.protobuf.CodedOutputStream
2565                .computeMessageSize(2, type_);
2566            }
2567            memoizedSerializedSize = size;
2568            return size;
2569          }
2570    
2571          private static final long serialVersionUID = 0L;
2572          @java.lang.Override
2573          protected java.lang.Object writeReplace()
2574              throws java.io.ObjectStreamException {
2575            return super.writeReplace();
2576          }
2577    
2578          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseFrom(
2579              com.google.protobuf.ByteString data)
2580              throws com.google.protobuf.InvalidProtocolBufferException {
2581            return PARSER.parseFrom(data);
2582          }
2583          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseFrom(
2584              com.google.protobuf.ByteString data,
2585              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2586              throws com.google.protobuf.InvalidProtocolBufferException {
2587            return PARSER.parseFrom(data, extensionRegistry);
2588          }
2589          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseFrom(byte[] data)
2590              throws com.google.protobuf.InvalidProtocolBufferException {
2591            return PARSER.parseFrom(data);
2592          }
2593          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseFrom(
2594              byte[] data,
2595              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2596              throws com.google.protobuf.InvalidProtocolBufferException {
2597            return PARSER.parseFrom(data, extensionRegistry);
2598          }
2599          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseFrom(java.io.InputStream input)
2600              throws java.io.IOException {
2601            return PARSER.parseFrom(input);
2602          }
2603          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseFrom(
2604              java.io.InputStream input,
2605              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2606              throws java.io.IOException {
2607            return PARSER.parseFrom(input, extensionRegistry);
2608          }
2609          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseDelimitedFrom(java.io.InputStream input)
2610              throws java.io.IOException {
2611            return PARSER.parseDelimitedFrom(input);
2612          }
2613          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseDelimitedFrom(
2614              java.io.InputStream input,
2615              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2616              throws java.io.IOException {
2617            return PARSER.parseDelimitedFrom(input, extensionRegistry);
2618          }
2619          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseFrom(
2620              com.google.protobuf.CodedInputStream input)
2621              throws java.io.IOException {
2622            return PARSER.parseFrom(input);
2623          }
2624          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parseFrom(
2625              com.google.protobuf.CodedInputStream input,
2626              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2627              throws java.io.IOException {
2628            return PARSER.parseFrom(input, extensionRegistry);
2629          }
2630    
2631          public static Builder newBuilder() { return Builder.create(); }
2632          public Builder newBuilderForType() { return newBuilder(); }
2633          public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument prototype) {
2634            return newBuilder().mergeFrom(prototype);
2635          }
2636          public Builder toBuilder() { return newBuilder(this); }
2637    
2638          /**
2639           * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Type.Argument}
2640           */
2641          public static final class Builder extends
2642              com.google.protobuf.GeneratedMessageLite.Builder<
2643                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument, Builder>
2644              implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.ArgumentOrBuilder {
2645            // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.newBuilder()
2646            private Builder() {
2647              maybeForceBuilderInitialization();
2648            }
2649    
2650            private void maybeForceBuilderInitialization() {
2651            }
2652            private static Builder create() {
2653              return new Builder();
2654            }
2655    
2656            public Builder clear() {
2657              super.clear();
2658              projection_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection.INV;
2659              bitField0_ = (bitField0_ & ~0x00000001);
2660              type_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
2661              bitField0_ = (bitField0_ & ~0x00000002);
2662              return this;
2663            }
2664    
2665            public Builder clone() {
2666              return create().mergeFrom(buildPartial());
2667            }
2668    
2669            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument getDefaultInstanceForType() {
2670              return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.getDefaultInstance();
2671            }
2672    
2673            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument build() {
2674              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument result = buildPartial();
2675              if (!result.isInitialized()) {
2676                throw newUninitializedMessageException(result);
2677              }
2678              return result;
2679            }
2680    
2681            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument buildPartial() {
2682              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument(this);
2683              int from_bitField0_ = bitField0_;
2684              int to_bitField0_ = 0;
2685              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
2686                to_bitField0_ |= 0x00000001;
2687              }
2688              result.projection_ = projection_;
2689              if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
2690                to_bitField0_ |= 0x00000002;
2691              }
2692              result.type_ = type_;
2693              result.bitField0_ = to_bitField0_;
2694              return result;
2695            }
2696    
2697            public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument other) {
2698              if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.getDefaultInstance()) return this;
2699              if (other.hasProjection()) {
2700                setProjection(other.getProjection());
2701              }
2702              if (other.hasType()) {
2703                mergeType(other.getType());
2704              }
2705              return this;
2706            }
2707    
2708            public final boolean isInitialized() {
2709              if (!hasType()) {
2710                
2711                return false;
2712              }
2713              if (!getType().isInitialized()) {
2714                
2715                return false;
2716              }
2717              return true;
2718            }
2719    
2720            public Builder mergeFrom(
2721                com.google.protobuf.CodedInputStream input,
2722                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2723                throws java.io.IOException {
2724              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument parsedMessage = null;
2725              try {
2726                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
2727              } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2728                parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument) e.getUnfinishedMessage();
2729                throw e;
2730              } finally {
2731                if (parsedMessage != null) {
2732                  mergeFrom(parsedMessage);
2733                }
2734              }
2735              return this;
2736            }
2737            private int bitField0_;
2738    
2739            // optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];
2740            private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection projection_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection.INV;
2741            /**
2742             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];</code>
2743             */
2744            public boolean hasProjection() {
2745              return ((bitField0_ & 0x00000001) == 0x00000001);
2746            }
2747            /**
2748             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];</code>
2749             */
2750            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection getProjection() {
2751              return projection_;
2752            }
2753            /**
2754             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];</code>
2755             */
2756            public Builder setProjection(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection value) {
2757              if (value == null) {
2758                throw new NullPointerException();
2759              }
2760              bitField0_ |= 0x00000001;
2761              projection_ = value;
2762              
2763              return this;
2764            }
2765            /**
2766             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type.Argument.Projection projection = 1 [default = INV];</code>
2767             */
2768            public Builder clearProjection() {
2769              bitField0_ = (bitField0_ & ~0x00000001);
2770              projection_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Projection.INV;
2771              
2772              return this;
2773            }
2774    
2775            // required .org.jetbrains.jet.descriptors.serialization.Type type = 2;
2776            private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type type_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
2777            /**
2778             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2779             */
2780            public boolean hasType() {
2781              return ((bitField0_ & 0x00000002) == 0x00000002);
2782            }
2783            /**
2784             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2785             */
2786            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getType() {
2787              return type_;
2788            }
2789            /**
2790             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2791             */
2792            public Builder setType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
2793              if (value == null) {
2794                throw new NullPointerException();
2795              }
2796              type_ = value;
2797    
2798              bitField0_ |= 0x00000002;
2799              return this;
2800            }
2801            /**
2802             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2803             */
2804            public Builder setType(
2805                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
2806              type_ = builderForValue.build();
2807    
2808              bitField0_ |= 0x00000002;
2809              return this;
2810            }
2811            /**
2812             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2813             */
2814            public Builder mergeType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
2815              if (((bitField0_ & 0x00000002) == 0x00000002) &&
2816                  type_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance()) {
2817                type_ =
2818                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.newBuilder(type_).mergeFrom(value).buildPartial();
2819              } else {
2820                type_ = value;
2821              }
2822    
2823              bitField0_ |= 0x00000002;
2824              return this;
2825            }
2826            /**
2827             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 2;</code>
2828             */
2829            public Builder clearType() {
2830              type_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
2831    
2832              bitField0_ = (bitField0_ & ~0x00000002);
2833              return this;
2834            }
2835    
2836            // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Type.Argument)
2837          }
2838    
2839          static {
2840            defaultInstance = new Argument(true);
2841            defaultInstance.initFields();
2842          }
2843    
2844          // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Type.Argument)
2845        }
2846    
2847        private int bitField0_;
2848        // required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;
2849        public static final int CONSTRUCTOR_FIELD_NUMBER = 1;
2850        private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor constructor_;
2851        /**
2852         * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
2853         */
2854        public boolean hasConstructor() {
2855          return ((bitField0_ & 0x00000001) == 0x00000001);
2856        }
2857        /**
2858         * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
2859         */
2860        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor getConstructor() {
2861          return constructor_;
2862        }
2863    
2864        // repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;
2865        public static final int ARGUMENT_FIELD_NUMBER = 2;
2866        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument> argument_;
2867        /**
2868         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
2869         */
2870        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument> getArgumentList() {
2871          return argument_;
2872        }
2873        /**
2874         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
2875         */
2876        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.ArgumentOrBuilder> 
2877            getArgumentOrBuilderList() {
2878          return argument_;
2879        }
2880        /**
2881         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
2882         */
2883        public int getArgumentCount() {
2884          return argument_.size();
2885        }
2886        /**
2887         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
2888         */
2889        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument getArgument(int index) {
2890          return argument_.get(index);
2891        }
2892        /**
2893         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
2894         */
2895        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.ArgumentOrBuilder getArgumentOrBuilder(
2896            int index) {
2897          return argument_.get(index);
2898        }
2899    
2900        // optional bool nullable = 3 [default = false];
2901        public static final int NULLABLE_FIELD_NUMBER = 3;
2902        private boolean nullable_;
2903        /**
2904         * <code>optional bool nullable = 3 [default = false];</code>
2905         */
2906        public boolean hasNullable() {
2907          return ((bitField0_ & 0x00000002) == 0x00000002);
2908        }
2909        /**
2910         * <code>optional bool nullable = 3 [default = false];</code>
2911         */
2912        public boolean getNullable() {
2913          return nullable_;
2914        }
2915    
2916        private void initFields() {
2917          constructor_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.getDefaultInstance();
2918          argument_ = java.util.Collections.emptyList();
2919          nullable_ = false;
2920        }
2921        private byte memoizedIsInitialized = -1;
2922        public final boolean isInitialized() {
2923          byte isInitialized = memoizedIsInitialized;
2924          if (isInitialized != -1) return isInitialized == 1;
2925    
2926          if (!hasConstructor()) {
2927            memoizedIsInitialized = 0;
2928            return false;
2929          }
2930          if (!getConstructor().isInitialized()) {
2931            memoizedIsInitialized = 0;
2932            return false;
2933          }
2934          for (int i = 0; i < getArgumentCount(); i++) {
2935            if (!getArgument(i).isInitialized()) {
2936              memoizedIsInitialized = 0;
2937              return false;
2938            }
2939          }
2940          memoizedIsInitialized = 1;
2941          return true;
2942        }
2943    
2944        public void writeTo(com.google.protobuf.CodedOutputStream output)
2945                            throws java.io.IOException {
2946          getSerializedSize();
2947          if (((bitField0_ & 0x00000001) == 0x00000001)) {
2948            output.writeMessage(1, constructor_);
2949          }
2950          for (int i = 0; i < argument_.size(); i++) {
2951            output.writeMessage(2, argument_.get(i));
2952          }
2953          if (((bitField0_ & 0x00000002) == 0x00000002)) {
2954            output.writeBool(3, nullable_);
2955          }
2956        }
2957    
2958        private int memoizedSerializedSize = -1;
2959        public int getSerializedSize() {
2960          int size = memoizedSerializedSize;
2961          if (size != -1) return size;
2962    
2963          size = 0;
2964          if (((bitField0_ & 0x00000001) == 0x00000001)) {
2965            size += com.google.protobuf.CodedOutputStream
2966              .computeMessageSize(1, constructor_);
2967          }
2968          for (int i = 0; i < argument_.size(); i++) {
2969            size += com.google.protobuf.CodedOutputStream
2970              .computeMessageSize(2, argument_.get(i));
2971          }
2972          if (((bitField0_ & 0x00000002) == 0x00000002)) {
2973            size += com.google.protobuf.CodedOutputStream
2974              .computeBoolSize(3, nullable_);
2975          }
2976          memoizedSerializedSize = size;
2977          return size;
2978        }
2979    
2980        private static final long serialVersionUID = 0L;
2981        @java.lang.Override
2982        protected java.lang.Object writeReplace()
2983            throws java.io.ObjectStreamException {
2984          return super.writeReplace();
2985        }
2986    
2987        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseFrom(
2988            com.google.protobuf.ByteString data)
2989            throws com.google.protobuf.InvalidProtocolBufferException {
2990          return PARSER.parseFrom(data);
2991        }
2992        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseFrom(
2993            com.google.protobuf.ByteString data,
2994            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2995            throws com.google.protobuf.InvalidProtocolBufferException {
2996          return PARSER.parseFrom(data, extensionRegistry);
2997        }
2998        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseFrom(byte[] data)
2999            throws com.google.protobuf.InvalidProtocolBufferException {
3000          return PARSER.parseFrom(data);
3001        }
3002        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseFrom(
3003            byte[] data,
3004            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3005            throws com.google.protobuf.InvalidProtocolBufferException {
3006          return PARSER.parseFrom(data, extensionRegistry);
3007        }
3008        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseFrom(java.io.InputStream input)
3009            throws java.io.IOException {
3010          return PARSER.parseFrom(input);
3011        }
3012        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseFrom(
3013            java.io.InputStream input,
3014            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3015            throws java.io.IOException {
3016          return PARSER.parseFrom(input, extensionRegistry);
3017        }
3018        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseDelimitedFrom(java.io.InputStream input)
3019            throws java.io.IOException {
3020          return PARSER.parseDelimitedFrom(input);
3021        }
3022        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseDelimitedFrom(
3023            java.io.InputStream input,
3024            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3025            throws java.io.IOException {
3026          return PARSER.parseDelimitedFrom(input, extensionRegistry);
3027        }
3028        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseFrom(
3029            com.google.protobuf.CodedInputStream input)
3030            throws java.io.IOException {
3031          return PARSER.parseFrom(input);
3032        }
3033        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parseFrom(
3034            com.google.protobuf.CodedInputStream input,
3035            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3036            throws java.io.IOException {
3037          return PARSER.parseFrom(input, extensionRegistry);
3038        }
3039    
3040        public static Builder newBuilder() { return Builder.create(); }
3041        public Builder newBuilderForType() { return newBuilder(); }
3042        public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type prototype) {
3043          return newBuilder().mergeFrom(prototype);
3044        }
3045        public Builder toBuilder() { return newBuilder(this); }
3046    
3047        /**
3048         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Type}
3049         */
3050        public static final class Builder extends
3051            com.google.protobuf.GeneratedMessageLite.Builder<
3052              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type, Builder>
3053            implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeOrBuilder {
3054          // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.newBuilder()
3055          private Builder() {
3056            maybeForceBuilderInitialization();
3057          }
3058    
3059          private void maybeForceBuilderInitialization() {
3060          }
3061          private static Builder create() {
3062            return new Builder();
3063          }
3064    
3065          public Builder clear() {
3066            super.clear();
3067            constructor_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.getDefaultInstance();
3068            bitField0_ = (bitField0_ & ~0x00000001);
3069            argument_ = java.util.Collections.emptyList();
3070            bitField0_ = (bitField0_ & ~0x00000002);
3071            nullable_ = false;
3072            bitField0_ = (bitField0_ & ~0x00000004);
3073            return this;
3074          }
3075    
3076          public Builder clone() {
3077            return create().mergeFrom(buildPartial());
3078          }
3079    
3080          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getDefaultInstanceForType() {
3081            return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
3082          }
3083    
3084          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type build() {
3085            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type result = buildPartial();
3086            if (!result.isInitialized()) {
3087              throw newUninitializedMessageException(result);
3088            }
3089            return result;
3090          }
3091    
3092          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type buildPartial() {
3093            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type(this);
3094            int from_bitField0_ = bitField0_;
3095            int to_bitField0_ = 0;
3096            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
3097              to_bitField0_ |= 0x00000001;
3098            }
3099            result.constructor_ = constructor_;
3100            if (((bitField0_ & 0x00000002) == 0x00000002)) {
3101              argument_ = java.util.Collections.unmodifiableList(argument_);
3102              bitField0_ = (bitField0_ & ~0x00000002);
3103            }
3104            result.argument_ = argument_;
3105            if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
3106              to_bitField0_ |= 0x00000002;
3107            }
3108            result.nullable_ = nullable_;
3109            result.bitField0_ = to_bitField0_;
3110            return result;
3111          }
3112    
3113          public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type other) {
3114            if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance()) return this;
3115            if (other.hasConstructor()) {
3116              mergeConstructor(other.getConstructor());
3117            }
3118            if (!other.argument_.isEmpty()) {
3119              if (argument_.isEmpty()) {
3120                argument_ = other.argument_;
3121                bitField0_ = (bitField0_ & ~0x00000002);
3122              } else {
3123                ensureArgumentIsMutable();
3124                argument_.addAll(other.argument_);
3125              }
3126              
3127            }
3128            if (other.hasNullable()) {
3129              setNullable(other.getNullable());
3130            }
3131            return this;
3132          }
3133    
3134          public final boolean isInitialized() {
3135            if (!hasConstructor()) {
3136              
3137              return false;
3138            }
3139            if (!getConstructor().isInitialized()) {
3140              
3141              return false;
3142            }
3143            for (int i = 0; i < getArgumentCount(); i++) {
3144              if (!getArgument(i).isInitialized()) {
3145                
3146                return false;
3147              }
3148            }
3149            return true;
3150          }
3151    
3152          public Builder mergeFrom(
3153              com.google.protobuf.CodedInputStream input,
3154              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3155              throws java.io.IOException {
3156            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type parsedMessage = null;
3157            try {
3158              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
3159            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3160              parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type) e.getUnfinishedMessage();
3161              throw e;
3162            } finally {
3163              if (parsedMessage != null) {
3164                mergeFrom(parsedMessage);
3165              }
3166            }
3167            return this;
3168          }
3169          private int bitField0_;
3170    
3171          // required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;
3172          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor constructor_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.getDefaultInstance();
3173          /**
3174           * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
3175           */
3176          public boolean hasConstructor() {
3177            return ((bitField0_ & 0x00000001) == 0x00000001);
3178          }
3179          /**
3180           * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
3181           */
3182          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor getConstructor() {
3183            return constructor_;
3184          }
3185          /**
3186           * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
3187           */
3188          public Builder setConstructor(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor value) {
3189            if (value == null) {
3190              throw new NullPointerException();
3191            }
3192            constructor_ = value;
3193    
3194            bitField0_ |= 0x00000001;
3195            return this;
3196          }
3197          /**
3198           * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
3199           */
3200          public Builder setConstructor(
3201              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.Builder builderForValue) {
3202            constructor_ = builderForValue.build();
3203    
3204            bitField0_ |= 0x00000001;
3205            return this;
3206          }
3207          /**
3208           * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
3209           */
3210          public Builder mergeConstructor(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor value) {
3211            if (((bitField0_ & 0x00000001) == 0x00000001) &&
3212                constructor_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.getDefaultInstance()) {
3213              constructor_ =
3214                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.newBuilder(constructor_).mergeFrom(value).buildPartial();
3215            } else {
3216              constructor_ = value;
3217            }
3218    
3219            bitField0_ |= 0x00000001;
3220            return this;
3221          }
3222          /**
3223           * <code>required .org.jetbrains.jet.descriptors.serialization.Type.Constructor constructor = 1;</code>
3224           */
3225          public Builder clearConstructor() {
3226            constructor_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Constructor.getDefaultInstance();
3227    
3228            bitField0_ = (bitField0_ & ~0x00000001);
3229            return this;
3230          }
3231    
3232          // repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;
3233          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument> argument_ =
3234            java.util.Collections.emptyList();
3235          private void ensureArgumentIsMutable() {
3236            if (!((bitField0_ & 0x00000002) == 0x00000002)) {
3237              argument_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument>(argument_);
3238              bitField0_ |= 0x00000002;
3239             }
3240          }
3241    
3242          /**
3243           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3244           */
3245          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument> getArgumentList() {
3246            return java.util.Collections.unmodifiableList(argument_);
3247          }
3248          /**
3249           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3250           */
3251          public int getArgumentCount() {
3252            return argument_.size();
3253          }
3254          /**
3255           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3256           */
3257          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument getArgument(int index) {
3258            return argument_.get(index);
3259          }
3260          /**
3261           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3262           */
3263          public Builder setArgument(
3264              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument value) {
3265            if (value == null) {
3266              throw new NullPointerException();
3267            }
3268            ensureArgumentIsMutable();
3269            argument_.set(index, value);
3270    
3271            return this;
3272          }
3273          /**
3274           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3275           */
3276          public Builder setArgument(
3277              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Builder builderForValue) {
3278            ensureArgumentIsMutable();
3279            argument_.set(index, builderForValue.build());
3280    
3281            return this;
3282          }
3283          /**
3284           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3285           */
3286          public Builder addArgument(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument value) {
3287            if (value == null) {
3288              throw new NullPointerException();
3289            }
3290            ensureArgumentIsMutable();
3291            argument_.add(value);
3292    
3293            return this;
3294          }
3295          /**
3296           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3297           */
3298          public Builder addArgument(
3299              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument value) {
3300            if (value == null) {
3301              throw new NullPointerException();
3302            }
3303            ensureArgumentIsMutable();
3304            argument_.add(index, value);
3305    
3306            return this;
3307          }
3308          /**
3309           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3310           */
3311          public Builder addArgument(
3312              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Builder builderForValue) {
3313            ensureArgumentIsMutable();
3314            argument_.add(builderForValue.build());
3315    
3316            return this;
3317          }
3318          /**
3319           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3320           */
3321          public Builder addArgument(
3322              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument.Builder builderForValue) {
3323            ensureArgumentIsMutable();
3324            argument_.add(index, builderForValue.build());
3325    
3326            return this;
3327          }
3328          /**
3329           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3330           */
3331          public Builder addAllArgument(
3332              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Argument> values) {
3333            ensureArgumentIsMutable();
3334            super.addAll(values, argument_);
3335    
3336            return this;
3337          }
3338          /**
3339           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3340           */
3341          public Builder clearArgument() {
3342            argument_ = java.util.Collections.emptyList();
3343            bitField0_ = (bitField0_ & ~0x00000002);
3344    
3345            return this;
3346          }
3347          /**
3348           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type.Argument argument = 2;</code>
3349           */
3350          public Builder removeArgument(int index) {
3351            ensureArgumentIsMutable();
3352            argument_.remove(index);
3353    
3354            return this;
3355          }
3356    
3357          // optional bool nullable = 3 [default = false];
3358          private boolean nullable_ ;
3359          /**
3360           * <code>optional bool nullable = 3 [default = false];</code>
3361           */
3362          public boolean hasNullable() {
3363            return ((bitField0_ & 0x00000004) == 0x00000004);
3364          }
3365          /**
3366           * <code>optional bool nullable = 3 [default = false];</code>
3367           */
3368          public boolean getNullable() {
3369            return nullable_;
3370          }
3371          /**
3372           * <code>optional bool nullable = 3 [default = false];</code>
3373           */
3374          public Builder setNullable(boolean value) {
3375            bitField0_ |= 0x00000004;
3376            nullable_ = value;
3377            
3378            return this;
3379          }
3380          /**
3381           * <code>optional bool nullable = 3 [default = false];</code>
3382           */
3383          public Builder clearNullable() {
3384            bitField0_ = (bitField0_ & ~0x00000004);
3385            nullable_ = false;
3386            
3387            return this;
3388          }
3389    
3390          // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Type)
3391        }
3392    
3393        static {
3394          defaultInstance = new Type(true);
3395          defaultInstance.initFields();
3396        }
3397    
3398        // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Type)
3399      }
3400    
3401      public interface TypeParameterOrBuilder
3402          extends com.google.protobuf.MessageLiteOrBuilder {
3403    
3404        // required int32 id = 1;
3405        /**
3406         * <code>required int32 id = 1;</code>
3407         */
3408        boolean hasId();
3409        /**
3410         * <code>required int32 id = 1;</code>
3411         */
3412        int getId();
3413    
3414        // required int32 name = 2;
3415        /**
3416         * <code>required int32 name = 2;</code>
3417         */
3418        boolean hasName();
3419        /**
3420         * <code>required int32 name = 2;</code>
3421         */
3422        int getName();
3423    
3424        // optional bool reified = 3 [default = false];
3425        /**
3426         * <code>optional bool reified = 3 [default = false];</code>
3427         */
3428        boolean hasReified();
3429        /**
3430         * <code>optional bool reified = 3 [default = false];</code>
3431         */
3432        boolean getReified();
3433    
3434        // optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];
3435        /**
3436         * <code>optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];</code>
3437         */
3438        boolean hasVariance();
3439        /**
3440         * <code>optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];</code>
3441         */
3442        org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance getVariance();
3443    
3444        // repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;
3445        /**
3446         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
3447         */
3448        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> 
3449            getUpperBoundList();
3450        /**
3451         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
3452         */
3453        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getUpperBound(int index);
3454        /**
3455         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
3456         */
3457        int getUpperBoundCount();
3458      }
3459      /**
3460       * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.TypeParameter}
3461       */
3462      public static final class TypeParameter extends
3463          com.google.protobuf.GeneratedMessageLite
3464          implements TypeParameterOrBuilder {
3465        // Use TypeParameter.newBuilder() to construct.
3466        private TypeParameter(com.google.protobuf.GeneratedMessageLite.Builder builder) {
3467          super(builder);
3468    
3469        }
3470        private TypeParameter(boolean noInit) {}
3471    
3472        private static final TypeParameter defaultInstance;
3473        public static TypeParameter getDefaultInstance() {
3474          return defaultInstance;
3475        }
3476    
3477        public TypeParameter getDefaultInstanceForType() {
3478          return defaultInstance;
3479        }
3480    
3481        private TypeParameter(
3482            com.google.protobuf.CodedInputStream input,
3483            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3484            throws com.google.protobuf.InvalidProtocolBufferException {
3485          initFields();
3486          int mutable_bitField0_ = 0;
3487          try {
3488            boolean done = false;
3489            while (!done) {
3490              int tag = input.readTag();
3491              switch (tag) {
3492                case 0:
3493                  done = true;
3494                  break;
3495                default: {
3496                  if (!parseUnknownField(input,
3497                                         extensionRegistry, tag)) {
3498                    done = true;
3499                  }
3500                  break;
3501                }
3502                case 8: {
3503                  bitField0_ |= 0x00000001;
3504                  id_ = input.readInt32();
3505                  break;
3506                }
3507                case 16: {
3508                  bitField0_ |= 0x00000002;
3509                  name_ = input.readInt32();
3510                  break;
3511                }
3512                case 24: {
3513                  bitField0_ |= 0x00000004;
3514                  reified_ = input.readBool();
3515                  break;
3516                }
3517                case 32: {
3518                  int rawValue = input.readEnum();
3519                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance value = org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance.valueOf(rawValue);
3520                  if (value != null) {
3521                    bitField0_ |= 0x00000008;
3522                    variance_ = value;
3523                  }
3524                  break;
3525                }
3526                case 42: {
3527                  if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
3528                    upperBound_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type>();
3529                    mutable_bitField0_ |= 0x00000010;
3530                  }
3531                  upperBound_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.PARSER, extensionRegistry));
3532                  break;
3533                }
3534              }
3535            }
3536          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
3537            throw e.setUnfinishedMessage(this);
3538          } catch (java.io.IOException e) {
3539            throw new com.google.protobuf.InvalidProtocolBufferException(
3540                e.getMessage()).setUnfinishedMessage(this);
3541          } finally {
3542            if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
3543              upperBound_ = java.util.Collections.unmodifiableList(upperBound_);
3544            }
3545            makeExtensionsImmutable();
3546          }
3547        }
3548        public static com.google.protobuf.Parser<TypeParameter> PARSER =
3549            new com.google.protobuf.AbstractParser<TypeParameter>() {
3550          public TypeParameter parsePartialFrom(
3551              com.google.protobuf.CodedInputStream input,
3552              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3553              throws com.google.protobuf.InvalidProtocolBufferException {
3554            return new TypeParameter(input, extensionRegistry);
3555          }
3556        };
3557    
3558        @java.lang.Override
3559        public com.google.protobuf.Parser<TypeParameter> getParserForType() {
3560          return PARSER;
3561        }
3562    
3563        /**
3564         * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance}
3565         */
3566        public enum Variance
3567            implements com.google.protobuf.Internal.EnumLite {
3568          /**
3569           * <code>IN = 0;</code>
3570           */
3571          IN(0, 0),
3572          /**
3573           * <code>OUT = 1;</code>
3574           */
3575          OUT(1, 1),
3576          /**
3577           * <code>INV = 2;</code>
3578           */
3579          INV(2, 2),
3580          ;
3581    
3582          /**
3583           * <code>IN = 0;</code>
3584           */
3585          public static final int IN_VALUE = 0;
3586          /**
3587           * <code>OUT = 1;</code>
3588           */
3589          public static final int OUT_VALUE = 1;
3590          /**
3591           * <code>INV = 2;</code>
3592           */
3593          public static final int INV_VALUE = 2;
3594    
3595    
3596          public final int getNumber() { return value; }
3597    
3598          public static Variance valueOf(int value) {
3599            switch (value) {
3600              case 0: return IN;
3601              case 1: return OUT;
3602              case 2: return INV;
3603              default: return null;
3604            }
3605          }
3606    
3607          public static com.google.protobuf.Internal.EnumLiteMap<Variance>
3608              internalGetValueMap() {
3609            return internalValueMap;
3610          }
3611          private static com.google.protobuf.Internal.EnumLiteMap<Variance>
3612              internalValueMap =
3613                new com.google.protobuf.Internal.EnumLiteMap<Variance>() {
3614                  public Variance findValueByNumber(int number) {
3615                    return Variance.valueOf(number);
3616                  }
3617                };
3618    
3619          private final int value;
3620    
3621          private Variance(int index, int value) {
3622            this.value = value;
3623          }
3624    
3625          // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance)
3626        }
3627    
3628        private int bitField0_;
3629        // required int32 id = 1;
3630        public static final int ID_FIELD_NUMBER = 1;
3631        private int id_;
3632        /**
3633         * <code>required int32 id = 1;</code>
3634         */
3635        public boolean hasId() {
3636          return ((bitField0_ & 0x00000001) == 0x00000001);
3637        }
3638        /**
3639         * <code>required int32 id = 1;</code>
3640         */
3641        public int getId() {
3642          return id_;
3643        }
3644    
3645        // required int32 name = 2;
3646        public static final int NAME_FIELD_NUMBER = 2;
3647        private int name_;
3648        /**
3649         * <code>required int32 name = 2;</code>
3650         */
3651        public boolean hasName() {
3652          return ((bitField0_ & 0x00000002) == 0x00000002);
3653        }
3654        /**
3655         * <code>required int32 name = 2;</code>
3656         */
3657        public int getName() {
3658          return name_;
3659        }
3660    
3661        // optional bool reified = 3 [default = false];
3662        public static final int REIFIED_FIELD_NUMBER = 3;
3663        private boolean reified_;
3664        /**
3665         * <code>optional bool reified = 3 [default = false];</code>
3666         */
3667        public boolean hasReified() {
3668          return ((bitField0_ & 0x00000004) == 0x00000004);
3669        }
3670        /**
3671         * <code>optional bool reified = 3 [default = false];</code>
3672         */
3673        public boolean getReified() {
3674          return reified_;
3675        }
3676    
3677        // optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];
3678        public static final int VARIANCE_FIELD_NUMBER = 4;
3679        private org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance variance_;
3680        /**
3681         * <code>optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];</code>
3682         */
3683        public boolean hasVariance() {
3684          return ((bitField0_ & 0x00000008) == 0x00000008);
3685        }
3686        /**
3687         * <code>optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];</code>
3688         */
3689        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance getVariance() {
3690          return variance_;
3691        }
3692    
3693        // repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;
3694        public static final int UPPER_BOUND_FIELD_NUMBER = 5;
3695        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> upperBound_;
3696        /**
3697         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
3698         */
3699        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> getUpperBoundList() {
3700          return upperBound_;
3701        }
3702        /**
3703         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
3704         */
3705        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeOrBuilder> 
3706            getUpperBoundOrBuilderList() {
3707          return upperBound_;
3708        }
3709        /**
3710         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
3711         */
3712        public int getUpperBoundCount() {
3713          return upperBound_.size();
3714        }
3715        /**
3716         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
3717         */
3718        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getUpperBound(int index) {
3719          return upperBound_.get(index);
3720        }
3721        /**
3722         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
3723         */
3724        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeOrBuilder getUpperBoundOrBuilder(
3725            int index) {
3726          return upperBound_.get(index);
3727        }
3728    
3729        private void initFields() {
3730          id_ = 0;
3731          name_ = 0;
3732          reified_ = false;
3733          variance_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance.INV;
3734          upperBound_ = java.util.Collections.emptyList();
3735        }
3736        private byte memoizedIsInitialized = -1;
3737        public final boolean isInitialized() {
3738          byte isInitialized = memoizedIsInitialized;
3739          if (isInitialized != -1) return isInitialized == 1;
3740    
3741          if (!hasId()) {
3742            memoizedIsInitialized = 0;
3743            return false;
3744          }
3745          if (!hasName()) {
3746            memoizedIsInitialized = 0;
3747            return false;
3748          }
3749          for (int i = 0; i < getUpperBoundCount(); i++) {
3750            if (!getUpperBound(i).isInitialized()) {
3751              memoizedIsInitialized = 0;
3752              return false;
3753            }
3754          }
3755          memoizedIsInitialized = 1;
3756          return true;
3757        }
3758    
3759        public void writeTo(com.google.protobuf.CodedOutputStream output)
3760                            throws java.io.IOException {
3761          getSerializedSize();
3762          if (((bitField0_ & 0x00000001) == 0x00000001)) {
3763            output.writeInt32(1, id_);
3764          }
3765          if (((bitField0_ & 0x00000002) == 0x00000002)) {
3766            output.writeInt32(2, name_);
3767          }
3768          if (((bitField0_ & 0x00000004) == 0x00000004)) {
3769            output.writeBool(3, reified_);
3770          }
3771          if (((bitField0_ & 0x00000008) == 0x00000008)) {
3772            output.writeEnum(4, variance_.getNumber());
3773          }
3774          for (int i = 0; i < upperBound_.size(); i++) {
3775            output.writeMessage(5, upperBound_.get(i));
3776          }
3777        }
3778    
3779        private int memoizedSerializedSize = -1;
3780        public int getSerializedSize() {
3781          int size = memoizedSerializedSize;
3782          if (size != -1) return size;
3783    
3784          size = 0;
3785          if (((bitField0_ & 0x00000001) == 0x00000001)) {
3786            size += com.google.protobuf.CodedOutputStream
3787              .computeInt32Size(1, id_);
3788          }
3789          if (((bitField0_ & 0x00000002) == 0x00000002)) {
3790            size += com.google.protobuf.CodedOutputStream
3791              .computeInt32Size(2, name_);
3792          }
3793          if (((bitField0_ & 0x00000004) == 0x00000004)) {
3794            size += com.google.protobuf.CodedOutputStream
3795              .computeBoolSize(3, reified_);
3796          }
3797          if (((bitField0_ & 0x00000008) == 0x00000008)) {
3798            size += com.google.protobuf.CodedOutputStream
3799              .computeEnumSize(4, variance_.getNumber());
3800          }
3801          for (int i = 0; i < upperBound_.size(); i++) {
3802            size += com.google.protobuf.CodedOutputStream
3803              .computeMessageSize(5, upperBound_.get(i));
3804          }
3805          memoizedSerializedSize = size;
3806          return size;
3807        }
3808    
3809        private static final long serialVersionUID = 0L;
3810        @java.lang.Override
3811        protected java.lang.Object writeReplace()
3812            throws java.io.ObjectStreamException {
3813          return super.writeReplace();
3814        }
3815    
3816        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseFrom(
3817            com.google.protobuf.ByteString data)
3818            throws com.google.protobuf.InvalidProtocolBufferException {
3819          return PARSER.parseFrom(data);
3820        }
3821        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseFrom(
3822            com.google.protobuf.ByteString data,
3823            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3824            throws com.google.protobuf.InvalidProtocolBufferException {
3825          return PARSER.parseFrom(data, extensionRegistry);
3826        }
3827        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseFrom(byte[] data)
3828            throws com.google.protobuf.InvalidProtocolBufferException {
3829          return PARSER.parseFrom(data);
3830        }
3831        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseFrom(
3832            byte[] data,
3833            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3834            throws com.google.protobuf.InvalidProtocolBufferException {
3835          return PARSER.parseFrom(data, extensionRegistry);
3836        }
3837        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseFrom(java.io.InputStream input)
3838            throws java.io.IOException {
3839          return PARSER.parseFrom(input);
3840        }
3841        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseFrom(
3842            java.io.InputStream input,
3843            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3844            throws java.io.IOException {
3845          return PARSER.parseFrom(input, extensionRegistry);
3846        }
3847        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseDelimitedFrom(java.io.InputStream input)
3848            throws java.io.IOException {
3849          return PARSER.parseDelimitedFrom(input);
3850        }
3851        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseDelimitedFrom(
3852            java.io.InputStream input,
3853            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3854            throws java.io.IOException {
3855          return PARSER.parseDelimitedFrom(input, extensionRegistry);
3856        }
3857        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseFrom(
3858            com.google.protobuf.CodedInputStream input)
3859            throws java.io.IOException {
3860          return PARSER.parseFrom(input);
3861        }
3862        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parseFrom(
3863            com.google.protobuf.CodedInputStream input,
3864            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
3865            throws java.io.IOException {
3866          return PARSER.parseFrom(input, extensionRegistry);
3867        }
3868    
3869        public static Builder newBuilder() { return Builder.create(); }
3870        public Builder newBuilderForType() { return newBuilder(); }
3871        public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter prototype) {
3872          return newBuilder().mergeFrom(prototype);
3873        }
3874        public Builder toBuilder() { return newBuilder(this); }
3875    
3876        /**
3877         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.TypeParameter}
3878         */
3879        public static final class Builder extends
3880            com.google.protobuf.GeneratedMessageLite.Builder<
3881              org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter, Builder>
3882            implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameterOrBuilder {
3883          // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.newBuilder()
3884          private Builder() {
3885            maybeForceBuilderInitialization();
3886          }
3887    
3888          private void maybeForceBuilderInitialization() {
3889          }
3890          private static Builder create() {
3891            return new Builder();
3892          }
3893    
3894          public Builder clear() {
3895            super.clear();
3896            id_ = 0;
3897            bitField0_ = (bitField0_ & ~0x00000001);
3898            name_ = 0;
3899            bitField0_ = (bitField0_ & ~0x00000002);
3900            reified_ = false;
3901            bitField0_ = (bitField0_ & ~0x00000004);
3902            variance_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance.INV;
3903            bitField0_ = (bitField0_ & ~0x00000008);
3904            upperBound_ = java.util.Collections.emptyList();
3905            bitField0_ = (bitField0_ & ~0x00000010);
3906            return this;
3907          }
3908    
3909          public Builder clone() {
3910            return create().mergeFrom(buildPartial());
3911          }
3912    
3913          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter getDefaultInstanceForType() {
3914            return org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.getDefaultInstance();
3915          }
3916    
3917          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter build() {
3918            org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter result = buildPartial();
3919            if (!result.isInitialized()) {
3920              throw newUninitializedMessageException(result);
3921            }
3922            return result;
3923          }
3924    
3925          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter buildPartial() {
3926            org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter(this);
3927            int from_bitField0_ = bitField0_;
3928            int to_bitField0_ = 0;
3929            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
3930              to_bitField0_ |= 0x00000001;
3931            }
3932            result.id_ = id_;
3933            if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
3934              to_bitField0_ |= 0x00000002;
3935            }
3936            result.name_ = name_;
3937            if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
3938              to_bitField0_ |= 0x00000004;
3939            }
3940            result.reified_ = reified_;
3941            if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
3942              to_bitField0_ |= 0x00000008;
3943            }
3944            result.variance_ = variance_;
3945            if (((bitField0_ & 0x00000010) == 0x00000010)) {
3946              upperBound_ = java.util.Collections.unmodifiableList(upperBound_);
3947              bitField0_ = (bitField0_ & ~0x00000010);
3948            }
3949            result.upperBound_ = upperBound_;
3950            result.bitField0_ = to_bitField0_;
3951            return result;
3952          }
3953    
3954          public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter other) {
3955            if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.getDefaultInstance()) return this;
3956            if (other.hasId()) {
3957              setId(other.getId());
3958            }
3959            if (other.hasName()) {
3960              setName(other.getName());
3961            }
3962            if (other.hasReified()) {
3963              setReified(other.getReified());
3964            }
3965            if (other.hasVariance()) {
3966              setVariance(other.getVariance());
3967            }
3968            if (!other.upperBound_.isEmpty()) {
3969              if (upperBound_.isEmpty()) {
3970                upperBound_ = other.upperBound_;
3971                bitField0_ = (bitField0_ & ~0x00000010);
3972              } else {
3973                ensureUpperBoundIsMutable();
3974                upperBound_.addAll(other.upperBound_);
3975              }
3976              
3977            }
3978            return this;
3979          }
3980    
3981          public final boolean isInitialized() {
3982            if (!hasId()) {
3983              
3984              return false;
3985            }
3986            if (!hasName()) {
3987              
3988              return false;
3989            }
3990            for (int i = 0; i < getUpperBoundCount(); i++) {
3991              if (!getUpperBound(i).isInitialized()) {
3992                
3993                return false;
3994              }
3995            }
3996            return true;
3997          }
3998    
3999          public Builder mergeFrom(
4000              com.google.protobuf.CodedInputStream input,
4001              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4002              throws java.io.IOException {
4003            org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter parsedMessage = null;
4004            try {
4005              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
4006            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
4007              parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter) e.getUnfinishedMessage();
4008              throw e;
4009            } finally {
4010              if (parsedMessage != null) {
4011                mergeFrom(parsedMessage);
4012              }
4013            }
4014            return this;
4015          }
4016          private int bitField0_;
4017    
4018          // required int32 id = 1;
4019          private int id_ ;
4020          /**
4021           * <code>required int32 id = 1;</code>
4022           */
4023          public boolean hasId() {
4024            return ((bitField0_ & 0x00000001) == 0x00000001);
4025          }
4026          /**
4027           * <code>required int32 id = 1;</code>
4028           */
4029          public int getId() {
4030            return id_;
4031          }
4032          /**
4033           * <code>required int32 id = 1;</code>
4034           */
4035          public Builder setId(int value) {
4036            bitField0_ |= 0x00000001;
4037            id_ = value;
4038            
4039            return this;
4040          }
4041          /**
4042           * <code>required int32 id = 1;</code>
4043           */
4044          public Builder clearId() {
4045            bitField0_ = (bitField0_ & ~0x00000001);
4046            id_ = 0;
4047            
4048            return this;
4049          }
4050    
4051          // required int32 name = 2;
4052          private int name_ ;
4053          /**
4054           * <code>required int32 name = 2;</code>
4055           */
4056          public boolean hasName() {
4057            return ((bitField0_ & 0x00000002) == 0x00000002);
4058          }
4059          /**
4060           * <code>required int32 name = 2;</code>
4061           */
4062          public int getName() {
4063            return name_;
4064          }
4065          /**
4066           * <code>required int32 name = 2;</code>
4067           */
4068          public Builder setName(int value) {
4069            bitField0_ |= 0x00000002;
4070            name_ = value;
4071            
4072            return this;
4073          }
4074          /**
4075           * <code>required int32 name = 2;</code>
4076           */
4077          public Builder clearName() {
4078            bitField0_ = (bitField0_ & ~0x00000002);
4079            name_ = 0;
4080            
4081            return this;
4082          }
4083    
4084          // optional bool reified = 3 [default = false];
4085          private boolean reified_ ;
4086          /**
4087           * <code>optional bool reified = 3 [default = false];</code>
4088           */
4089          public boolean hasReified() {
4090            return ((bitField0_ & 0x00000004) == 0x00000004);
4091          }
4092          /**
4093           * <code>optional bool reified = 3 [default = false];</code>
4094           */
4095          public boolean getReified() {
4096            return reified_;
4097          }
4098          /**
4099           * <code>optional bool reified = 3 [default = false];</code>
4100           */
4101          public Builder setReified(boolean value) {
4102            bitField0_ |= 0x00000004;
4103            reified_ = value;
4104            
4105            return this;
4106          }
4107          /**
4108           * <code>optional bool reified = 3 [default = false];</code>
4109           */
4110          public Builder clearReified() {
4111            bitField0_ = (bitField0_ & ~0x00000004);
4112            reified_ = false;
4113            
4114            return this;
4115          }
4116    
4117          // optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];
4118          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance variance_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance.INV;
4119          /**
4120           * <code>optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];</code>
4121           */
4122          public boolean hasVariance() {
4123            return ((bitField0_ & 0x00000008) == 0x00000008);
4124          }
4125          /**
4126           * <code>optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];</code>
4127           */
4128          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance getVariance() {
4129            return variance_;
4130          }
4131          /**
4132           * <code>optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];</code>
4133           */
4134          public Builder setVariance(org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance value) {
4135            if (value == null) {
4136              throw new NullPointerException();
4137            }
4138            bitField0_ |= 0x00000008;
4139            variance_ = value;
4140            
4141            return this;
4142          }
4143          /**
4144           * <code>optional .org.jetbrains.jet.descriptors.serialization.TypeParameter.Variance variance = 4 [default = INV];</code>
4145           */
4146          public Builder clearVariance() {
4147            bitField0_ = (bitField0_ & ~0x00000008);
4148            variance_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Variance.INV;
4149            
4150            return this;
4151          }
4152    
4153          // repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;
4154          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> upperBound_ =
4155            java.util.Collections.emptyList();
4156          private void ensureUpperBoundIsMutable() {
4157            if (!((bitField0_ & 0x00000010) == 0x00000010)) {
4158              upperBound_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type>(upperBound_);
4159              bitField0_ |= 0x00000010;
4160             }
4161          }
4162    
4163          /**
4164           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4165           */
4166          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> getUpperBoundList() {
4167            return java.util.Collections.unmodifiableList(upperBound_);
4168          }
4169          /**
4170           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4171           */
4172          public int getUpperBoundCount() {
4173            return upperBound_.size();
4174          }
4175          /**
4176           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4177           */
4178          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getUpperBound(int index) {
4179            return upperBound_.get(index);
4180          }
4181          /**
4182           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4183           */
4184          public Builder setUpperBound(
4185              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
4186            if (value == null) {
4187              throw new NullPointerException();
4188            }
4189            ensureUpperBoundIsMutable();
4190            upperBound_.set(index, value);
4191    
4192            return this;
4193          }
4194          /**
4195           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4196           */
4197          public Builder setUpperBound(
4198              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
4199            ensureUpperBoundIsMutable();
4200            upperBound_.set(index, builderForValue.build());
4201    
4202            return this;
4203          }
4204          /**
4205           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4206           */
4207          public Builder addUpperBound(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
4208            if (value == null) {
4209              throw new NullPointerException();
4210            }
4211            ensureUpperBoundIsMutable();
4212            upperBound_.add(value);
4213    
4214            return this;
4215          }
4216          /**
4217           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4218           */
4219          public Builder addUpperBound(
4220              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
4221            if (value == null) {
4222              throw new NullPointerException();
4223            }
4224            ensureUpperBoundIsMutable();
4225            upperBound_.add(index, value);
4226    
4227            return this;
4228          }
4229          /**
4230           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4231           */
4232          public Builder addUpperBound(
4233              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
4234            ensureUpperBoundIsMutable();
4235            upperBound_.add(builderForValue.build());
4236    
4237            return this;
4238          }
4239          /**
4240           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4241           */
4242          public Builder addUpperBound(
4243              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
4244            ensureUpperBoundIsMutable();
4245            upperBound_.add(index, builderForValue.build());
4246    
4247            return this;
4248          }
4249          /**
4250           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4251           */
4252          public Builder addAllUpperBound(
4253              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> values) {
4254            ensureUpperBoundIsMutable();
4255            super.addAll(values, upperBound_);
4256    
4257            return this;
4258          }
4259          /**
4260           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4261           */
4262          public Builder clearUpperBound() {
4263            upperBound_ = java.util.Collections.emptyList();
4264            bitField0_ = (bitField0_ & ~0x00000010);
4265    
4266            return this;
4267          }
4268          /**
4269           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type upper_bound = 5;</code>
4270           */
4271          public Builder removeUpperBound(int index) {
4272            ensureUpperBoundIsMutable();
4273            upperBound_.remove(index);
4274    
4275            return this;
4276          }
4277    
4278          // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.TypeParameter)
4279        }
4280    
4281        static {
4282          defaultInstance = new TypeParameter(true);
4283          defaultInstance.initFields();
4284        }
4285    
4286        // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.TypeParameter)
4287      }
4288    
4289      public interface ClassOrBuilder
4290          extends com.google.protobuf.MessageLiteOrBuilder {
4291    
4292        // optional int32 flags = 1 [default = 0];
4293        /**
4294         * <code>optional int32 flags = 1 [default = 0];</code>
4295         *
4296         * <pre>
4297         *
4298         *Visibility
4299         *Modality
4300         *has_annotation
4301         *ClassKind
4302         *is_inner
4303         * </pre>
4304         */
4305        boolean hasFlags();
4306        /**
4307         * <code>optional int32 flags = 1 [default = 0];</code>
4308         *
4309         * <pre>
4310         *
4311         *Visibility
4312         *Modality
4313         *has_annotation
4314         *ClassKind
4315         *is_inner
4316         * </pre>
4317         */
4318        int getFlags();
4319    
4320        // optional string extra_visibility = 2;
4321        /**
4322         * <code>optional string extra_visibility = 2;</code>
4323         *
4324         * <pre>
4325         * for things like java-specific visibilities
4326         * </pre>
4327         */
4328        boolean hasExtraVisibility();
4329        /**
4330         * <code>optional string extra_visibility = 2;</code>
4331         *
4332         * <pre>
4333         * for things like java-specific visibilities
4334         * </pre>
4335         */
4336        java.lang.String getExtraVisibility();
4337        /**
4338         * <code>optional string extra_visibility = 2;</code>
4339         *
4340         * <pre>
4341         * for things like java-specific visibilities
4342         * </pre>
4343         */
4344        com.google.protobuf.ByteString
4345            getExtraVisibilityBytes();
4346    
4347        // required int32 fq_name = 3;
4348        /**
4349         * <code>required int32 fq_name = 3;</code>
4350         */
4351        boolean hasFqName();
4352        /**
4353         * <code>required int32 fq_name = 3;</code>
4354         */
4355        int getFqName();
4356    
4357        // optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;
4358        /**
4359         * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
4360         *
4361         * <pre>
4362         * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
4363         * </pre>
4364         */
4365        boolean hasClassObject();
4366        /**
4367         * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
4368         *
4369         * <pre>
4370         * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
4371         * </pre>
4372         */
4373        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject getClassObject();
4374    
4375        // repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;
4376        /**
4377         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
4378         */
4379        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> 
4380            getTypeParameterList();
4381        /**
4382         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
4383         */
4384        org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter getTypeParameter(int index);
4385        /**
4386         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
4387         */
4388        int getTypeParameterCount();
4389    
4390        // repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;
4391        /**
4392         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
4393         */
4394        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> 
4395            getSupertypeList();
4396        /**
4397         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
4398         */
4399        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getSupertype(int index);
4400        /**
4401         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
4402         */
4403        int getSupertypeCount();
4404    
4405        // repeated int32 nested_class_name = 7;
4406        /**
4407         * <code>repeated int32 nested_class_name = 7;</code>
4408         *
4409         * <pre>
4410         * we store only names, because the actual information must reside in the corresponding .class files,
4411         * to be obtainable through reflection at runtime
4412         * </pre>
4413         */
4414        java.util.List<java.lang.Integer> getNestedClassNameList();
4415        /**
4416         * <code>repeated int32 nested_class_name = 7;</code>
4417         *
4418         * <pre>
4419         * we store only names, because the actual information must reside in the corresponding .class files,
4420         * to be obtainable through reflection at runtime
4421         * </pre>
4422         */
4423        int getNestedClassNameCount();
4424        /**
4425         * <code>repeated int32 nested_class_name = 7;</code>
4426         *
4427         * <pre>
4428         * we store only names, because the actual information must reside in the corresponding .class files,
4429         * to be obtainable through reflection at runtime
4430         * </pre>
4431         */
4432        int getNestedClassName(int index);
4433    
4434        // repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;
4435        /**
4436         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
4437         */
4438        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> 
4439            getMemberList();
4440        /**
4441         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
4442         */
4443        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getMember(int index);
4444        /**
4445         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
4446         */
4447        int getMemberCount();
4448    
4449        // repeated int32 enum_entry = 12;
4450        /**
4451         * <code>repeated int32 enum_entry = 12;</code>
4452         */
4453        java.util.List<java.lang.Integer> getEnumEntryList();
4454        /**
4455         * <code>repeated int32 enum_entry = 12;</code>
4456         */
4457        int getEnumEntryCount();
4458        /**
4459         * <code>repeated int32 enum_entry = 12;</code>
4460         */
4461        int getEnumEntry(int index);
4462    
4463        // optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;
4464        /**
4465         * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
4466         *
4467         * <pre>
4468         * This field is present if and only if the class has a primary constructor
4469         * </pre>
4470         */
4471        boolean hasPrimaryConstructor();
4472        /**
4473         * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
4474         *
4475         * <pre>
4476         * This field is present if and only if the class has a primary constructor
4477         * </pre>
4478         */
4479        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor getPrimaryConstructor();
4480      }
4481      /**
4482       * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Class}
4483       */
4484      public static final class Class extends
4485          com.google.protobuf.GeneratedMessageLite
4486          implements ClassOrBuilder {
4487        // Use Class.newBuilder() to construct.
4488        private Class(com.google.protobuf.GeneratedMessageLite.Builder builder) {
4489          super(builder);
4490    
4491        }
4492        private Class(boolean noInit) {}
4493    
4494        private static final Class defaultInstance;
4495        public static Class getDefaultInstance() {
4496          return defaultInstance;
4497        }
4498    
4499        public Class getDefaultInstanceForType() {
4500          return defaultInstance;
4501        }
4502    
4503        private Class(
4504            com.google.protobuf.CodedInputStream input,
4505            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4506            throws com.google.protobuf.InvalidProtocolBufferException {
4507          initFields();
4508          int mutable_bitField0_ = 0;
4509          try {
4510            boolean done = false;
4511            while (!done) {
4512              int tag = input.readTag();
4513              switch (tag) {
4514                case 0:
4515                  done = true;
4516                  break;
4517                default: {
4518                  if (!parseUnknownField(input,
4519                                         extensionRegistry, tag)) {
4520                    done = true;
4521                  }
4522                  break;
4523                }
4524                case 8: {
4525                  bitField0_ |= 0x00000001;
4526                  flags_ = input.readInt32();
4527                  break;
4528                }
4529                case 18: {
4530                  bitField0_ |= 0x00000002;
4531                  extraVisibility_ = input.readBytes();
4532                  break;
4533                }
4534                case 24: {
4535                  bitField0_ |= 0x00000004;
4536                  fqName_ = input.readInt32();
4537                  break;
4538                }
4539                case 34: {
4540                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.Builder subBuilder = null;
4541                  if (((bitField0_ & 0x00000008) == 0x00000008)) {
4542                    subBuilder = classObject_.toBuilder();
4543                  }
4544                  classObject_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.PARSER, extensionRegistry);
4545                  if (subBuilder != null) {
4546                    subBuilder.mergeFrom(classObject_);
4547                    classObject_ = subBuilder.buildPartial();
4548                  }
4549                  bitField0_ |= 0x00000008;
4550                  break;
4551                }
4552                case 42: {
4553                  if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
4554                    typeParameter_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter>();
4555                    mutable_bitField0_ |= 0x00000010;
4556                  }
4557                  typeParameter_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.PARSER, extensionRegistry));
4558                  break;
4559                }
4560                case 50: {
4561                  if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
4562                    supertype_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type>();
4563                    mutable_bitField0_ |= 0x00000020;
4564                  }
4565                  supertype_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.PARSER, extensionRegistry));
4566                  break;
4567                }
4568                case 56: {
4569                  if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
4570                    nestedClassName_ = new java.util.ArrayList<java.lang.Integer>();
4571                    mutable_bitField0_ |= 0x00000040;
4572                  }
4573                  nestedClassName_.add(input.readInt32());
4574                  break;
4575                }
4576                case 58: {
4577                  int length = input.readRawVarint32();
4578                  int limit = input.pushLimit(length);
4579                  if (!((mutable_bitField0_ & 0x00000040) == 0x00000040) && input.getBytesUntilLimit() > 0) {
4580                    nestedClassName_ = new java.util.ArrayList<java.lang.Integer>();
4581                    mutable_bitField0_ |= 0x00000040;
4582                  }
4583                  while (input.getBytesUntilLimit() > 0) {
4584                    nestedClassName_.add(input.readInt32());
4585                  }
4586                  input.popLimit(limit);
4587                  break;
4588                }
4589                case 90: {
4590                  if (!((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
4591                    member_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable>();
4592                    mutable_bitField0_ |= 0x00000080;
4593                  }
4594                  member_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.PARSER, extensionRegistry));
4595                  break;
4596                }
4597                case 96: {
4598                  if (!((mutable_bitField0_ & 0x00000100) == 0x00000100)) {
4599                    enumEntry_ = new java.util.ArrayList<java.lang.Integer>();
4600                    mutable_bitField0_ |= 0x00000100;
4601                  }
4602                  enumEntry_.add(input.readInt32());
4603                  break;
4604                }
4605                case 98: {
4606                  int length = input.readRawVarint32();
4607                  int limit = input.pushLimit(length);
4608                  if (!((mutable_bitField0_ & 0x00000100) == 0x00000100) && input.getBytesUntilLimit() > 0) {
4609                    enumEntry_ = new java.util.ArrayList<java.lang.Integer>();
4610                    mutable_bitField0_ |= 0x00000100;
4611                  }
4612                  while (input.getBytesUntilLimit() > 0) {
4613                    enumEntry_.add(input.readInt32());
4614                  }
4615                  input.popLimit(limit);
4616                  break;
4617                }
4618                case 106: {
4619                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.Builder subBuilder = null;
4620                  if (((bitField0_ & 0x00000010) == 0x00000010)) {
4621                    subBuilder = primaryConstructor_.toBuilder();
4622                  }
4623                  primaryConstructor_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.PARSER, extensionRegistry);
4624                  if (subBuilder != null) {
4625                    subBuilder.mergeFrom(primaryConstructor_);
4626                    primaryConstructor_ = subBuilder.buildPartial();
4627                  }
4628                  bitField0_ |= 0x00000010;
4629                  break;
4630                }
4631              }
4632            }
4633          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
4634            throw e.setUnfinishedMessage(this);
4635          } catch (java.io.IOException e) {
4636            throw new com.google.protobuf.InvalidProtocolBufferException(
4637                e.getMessage()).setUnfinishedMessage(this);
4638          } finally {
4639            if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
4640              typeParameter_ = java.util.Collections.unmodifiableList(typeParameter_);
4641            }
4642            if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
4643              supertype_ = java.util.Collections.unmodifiableList(supertype_);
4644            }
4645            if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
4646              nestedClassName_ = java.util.Collections.unmodifiableList(nestedClassName_);
4647            }
4648            if (((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
4649              member_ = java.util.Collections.unmodifiableList(member_);
4650            }
4651            if (((mutable_bitField0_ & 0x00000100) == 0x00000100)) {
4652              enumEntry_ = java.util.Collections.unmodifiableList(enumEntry_);
4653            }
4654            makeExtensionsImmutable();
4655          }
4656        }
4657        public static com.google.protobuf.Parser<Class> PARSER =
4658            new com.google.protobuf.AbstractParser<Class>() {
4659          public Class parsePartialFrom(
4660              com.google.protobuf.CodedInputStream input,
4661              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4662              throws com.google.protobuf.InvalidProtocolBufferException {
4663            return new Class(input, extensionRegistry);
4664          }
4665        };
4666    
4667        @java.lang.Override
4668        public com.google.protobuf.Parser<Class> getParserForType() {
4669          return PARSER;
4670        }
4671    
4672        /**
4673         * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.Class.Kind}
4674         */
4675        public enum Kind
4676            implements com.google.protobuf.Internal.EnumLite {
4677          /**
4678           * <code>CLASS = 0;</code>
4679           *
4680           * <pre>
4681           * 3 bits
4682           * </pre>
4683           */
4684          CLASS(0, 0),
4685          /**
4686           * <code>TRAIT = 1;</code>
4687           */
4688          TRAIT(1, 1),
4689          /**
4690           * <code>ENUM_CLASS = 2;</code>
4691           */
4692          ENUM_CLASS(2, 2),
4693          /**
4694           * <code>ENUM_ENTRY = 3;</code>
4695           */
4696          ENUM_ENTRY(3, 3),
4697          /**
4698           * <code>ANNOTATION_CLASS = 4;</code>
4699           */
4700          ANNOTATION_CLASS(4, 4),
4701          /**
4702           * <code>OBJECT = 5;</code>
4703           */
4704          OBJECT(5, 5),
4705          /**
4706           * <code>CLASS_OBJECT = 6;</code>
4707           */
4708          CLASS_OBJECT(6, 6),
4709          ;
4710    
4711          /**
4712           * <code>CLASS = 0;</code>
4713           *
4714           * <pre>
4715           * 3 bits
4716           * </pre>
4717           */
4718          public static final int CLASS_VALUE = 0;
4719          /**
4720           * <code>TRAIT = 1;</code>
4721           */
4722          public static final int TRAIT_VALUE = 1;
4723          /**
4724           * <code>ENUM_CLASS = 2;</code>
4725           */
4726          public static final int ENUM_CLASS_VALUE = 2;
4727          /**
4728           * <code>ENUM_ENTRY = 3;</code>
4729           */
4730          public static final int ENUM_ENTRY_VALUE = 3;
4731          /**
4732           * <code>ANNOTATION_CLASS = 4;</code>
4733           */
4734          public static final int ANNOTATION_CLASS_VALUE = 4;
4735          /**
4736           * <code>OBJECT = 5;</code>
4737           */
4738          public static final int OBJECT_VALUE = 5;
4739          /**
4740           * <code>CLASS_OBJECT = 6;</code>
4741           */
4742          public static final int CLASS_OBJECT_VALUE = 6;
4743    
4744    
4745          public final int getNumber() { return value; }
4746    
4747          public static Kind valueOf(int value) {
4748            switch (value) {
4749              case 0: return CLASS;
4750              case 1: return TRAIT;
4751              case 2: return ENUM_CLASS;
4752              case 3: return ENUM_ENTRY;
4753              case 4: return ANNOTATION_CLASS;
4754              case 5: return OBJECT;
4755              case 6: return CLASS_OBJECT;
4756              default: return null;
4757            }
4758          }
4759    
4760          public static com.google.protobuf.Internal.EnumLiteMap<Kind>
4761              internalGetValueMap() {
4762            return internalValueMap;
4763          }
4764          private static com.google.protobuf.Internal.EnumLiteMap<Kind>
4765              internalValueMap =
4766                new com.google.protobuf.Internal.EnumLiteMap<Kind>() {
4767                  public Kind findValueByNumber(int number) {
4768                    return Kind.valueOf(number);
4769                  }
4770                };
4771    
4772          private final int value;
4773    
4774          private Kind(int index, int value) {
4775            this.value = value;
4776          }
4777    
4778          // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.Class.Kind)
4779        }
4780    
4781        public interface ClassObjectOrBuilder
4782            extends com.google.protobuf.MessageLiteOrBuilder {
4783    
4784          // optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;
4785          /**
4786           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
4787           *
4788           * <pre>
4789           * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
4790           * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
4791           * </pre>
4792           */
4793          boolean hasData();
4794          /**
4795           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
4796           *
4797           * <pre>
4798           * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
4799           * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
4800           * </pre>
4801           */
4802          org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class getData();
4803        }
4804        /**
4805         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Class.ClassObject}
4806         */
4807        public static final class ClassObject extends
4808            com.google.protobuf.GeneratedMessageLite
4809            implements ClassObjectOrBuilder {
4810          // Use ClassObject.newBuilder() to construct.
4811          private ClassObject(com.google.protobuf.GeneratedMessageLite.Builder builder) {
4812            super(builder);
4813    
4814          }
4815          private ClassObject(boolean noInit) {}
4816    
4817          private static final ClassObject defaultInstance;
4818          public static ClassObject getDefaultInstance() {
4819            return defaultInstance;
4820          }
4821    
4822          public ClassObject getDefaultInstanceForType() {
4823            return defaultInstance;
4824          }
4825    
4826          private ClassObject(
4827              com.google.protobuf.CodedInputStream input,
4828              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4829              throws com.google.protobuf.InvalidProtocolBufferException {
4830            initFields();
4831            int mutable_bitField0_ = 0;
4832            try {
4833              boolean done = false;
4834              while (!done) {
4835                int tag = input.readTag();
4836                switch (tag) {
4837                  case 0:
4838                    done = true;
4839                    break;
4840                  default: {
4841                    if (!parseUnknownField(input,
4842                                           extensionRegistry, tag)) {
4843                      done = true;
4844                    }
4845                    break;
4846                  }
4847                  case 10: {
4848                    org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.Builder subBuilder = null;
4849                    if (((bitField0_ & 0x00000001) == 0x00000001)) {
4850                      subBuilder = data_.toBuilder();
4851                    }
4852                    data_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PARSER, extensionRegistry);
4853                    if (subBuilder != null) {
4854                      subBuilder.mergeFrom(data_);
4855                      data_ = subBuilder.buildPartial();
4856                    }
4857                    bitField0_ |= 0x00000001;
4858                    break;
4859                  }
4860                }
4861              }
4862            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
4863              throw e.setUnfinishedMessage(this);
4864            } catch (java.io.IOException e) {
4865              throw new com.google.protobuf.InvalidProtocolBufferException(
4866                  e.getMessage()).setUnfinishedMessage(this);
4867            } finally {
4868              makeExtensionsImmutable();
4869            }
4870          }
4871          public static com.google.protobuf.Parser<ClassObject> PARSER =
4872              new com.google.protobuf.AbstractParser<ClassObject>() {
4873            public ClassObject parsePartialFrom(
4874                com.google.protobuf.CodedInputStream input,
4875                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4876                throws com.google.protobuf.InvalidProtocolBufferException {
4877              return new ClassObject(input, extensionRegistry);
4878            }
4879          };
4880    
4881          @java.lang.Override
4882          public com.google.protobuf.Parser<ClassObject> getParserForType() {
4883            return PARSER;
4884          }
4885    
4886          private int bitField0_;
4887          // optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;
4888          public static final int DATA_FIELD_NUMBER = 1;
4889          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class data_;
4890          /**
4891           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
4892           *
4893           * <pre>
4894           * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
4895           * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
4896           * </pre>
4897           */
4898          public boolean hasData() {
4899            return ((bitField0_ & 0x00000001) == 0x00000001);
4900          }
4901          /**
4902           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
4903           *
4904           * <pre>
4905           * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
4906           * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
4907           * </pre>
4908           */
4909          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class getData() {
4910            return data_;
4911          }
4912    
4913          private void initFields() {
4914            data_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.getDefaultInstance();
4915          }
4916          private byte memoizedIsInitialized = -1;
4917          public final boolean isInitialized() {
4918            byte isInitialized = memoizedIsInitialized;
4919            if (isInitialized != -1) return isInitialized == 1;
4920    
4921            if (hasData()) {
4922              if (!getData().isInitialized()) {
4923                memoizedIsInitialized = 0;
4924                return false;
4925              }
4926            }
4927            memoizedIsInitialized = 1;
4928            return true;
4929          }
4930    
4931          public void writeTo(com.google.protobuf.CodedOutputStream output)
4932                              throws java.io.IOException {
4933            getSerializedSize();
4934            if (((bitField0_ & 0x00000001) == 0x00000001)) {
4935              output.writeMessage(1, data_);
4936            }
4937          }
4938    
4939          private int memoizedSerializedSize = -1;
4940          public int getSerializedSize() {
4941            int size = memoizedSerializedSize;
4942            if (size != -1) return size;
4943    
4944            size = 0;
4945            if (((bitField0_ & 0x00000001) == 0x00000001)) {
4946              size += com.google.protobuf.CodedOutputStream
4947                .computeMessageSize(1, data_);
4948            }
4949            memoizedSerializedSize = size;
4950            return size;
4951          }
4952    
4953          private static final long serialVersionUID = 0L;
4954          @java.lang.Override
4955          protected java.lang.Object writeReplace()
4956              throws java.io.ObjectStreamException {
4957            return super.writeReplace();
4958          }
4959    
4960          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseFrom(
4961              com.google.protobuf.ByteString data)
4962              throws com.google.protobuf.InvalidProtocolBufferException {
4963            return PARSER.parseFrom(data);
4964          }
4965          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseFrom(
4966              com.google.protobuf.ByteString data,
4967              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4968              throws com.google.protobuf.InvalidProtocolBufferException {
4969            return PARSER.parseFrom(data, extensionRegistry);
4970          }
4971          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseFrom(byte[] data)
4972              throws com.google.protobuf.InvalidProtocolBufferException {
4973            return PARSER.parseFrom(data);
4974          }
4975          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseFrom(
4976              byte[] data,
4977              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4978              throws com.google.protobuf.InvalidProtocolBufferException {
4979            return PARSER.parseFrom(data, extensionRegistry);
4980          }
4981          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseFrom(java.io.InputStream input)
4982              throws java.io.IOException {
4983            return PARSER.parseFrom(input);
4984          }
4985          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseFrom(
4986              java.io.InputStream input,
4987              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4988              throws java.io.IOException {
4989            return PARSER.parseFrom(input, extensionRegistry);
4990          }
4991          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseDelimitedFrom(java.io.InputStream input)
4992              throws java.io.IOException {
4993            return PARSER.parseDelimitedFrom(input);
4994          }
4995          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseDelimitedFrom(
4996              java.io.InputStream input,
4997              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
4998              throws java.io.IOException {
4999            return PARSER.parseDelimitedFrom(input, extensionRegistry);
5000          }
5001          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseFrom(
5002              com.google.protobuf.CodedInputStream input)
5003              throws java.io.IOException {
5004            return PARSER.parseFrom(input);
5005          }
5006          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parseFrom(
5007              com.google.protobuf.CodedInputStream input,
5008              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5009              throws java.io.IOException {
5010            return PARSER.parseFrom(input, extensionRegistry);
5011          }
5012    
5013          public static Builder newBuilder() { return Builder.create(); }
5014          public Builder newBuilderForType() { return newBuilder(); }
5015          public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject prototype) {
5016            return newBuilder().mergeFrom(prototype);
5017          }
5018          public Builder toBuilder() { return newBuilder(this); }
5019    
5020          /**
5021           * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Class.ClassObject}
5022           */
5023          public static final class Builder extends
5024              com.google.protobuf.GeneratedMessageLite.Builder<
5025                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject, Builder>
5026              implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObjectOrBuilder {
5027            // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.newBuilder()
5028            private Builder() {
5029              maybeForceBuilderInitialization();
5030            }
5031    
5032            private void maybeForceBuilderInitialization() {
5033            }
5034            private static Builder create() {
5035              return new Builder();
5036            }
5037    
5038            public Builder clear() {
5039              super.clear();
5040              data_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.getDefaultInstance();
5041              bitField0_ = (bitField0_ & ~0x00000001);
5042              return this;
5043            }
5044    
5045            public Builder clone() {
5046              return create().mergeFrom(buildPartial());
5047            }
5048    
5049            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject getDefaultInstanceForType() {
5050              return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.getDefaultInstance();
5051            }
5052    
5053            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject build() {
5054              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject result = buildPartial();
5055              if (!result.isInitialized()) {
5056                throw newUninitializedMessageException(result);
5057              }
5058              return result;
5059            }
5060    
5061            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject buildPartial() {
5062              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject(this);
5063              int from_bitField0_ = bitField0_;
5064              int to_bitField0_ = 0;
5065              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
5066                to_bitField0_ |= 0x00000001;
5067              }
5068              result.data_ = data_;
5069              result.bitField0_ = to_bitField0_;
5070              return result;
5071            }
5072    
5073            public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject other) {
5074              if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.getDefaultInstance()) return this;
5075              if (other.hasData()) {
5076                mergeData(other.getData());
5077              }
5078              return this;
5079            }
5080    
5081            public final boolean isInitialized() {
5082              if (hasData()) {
5083                if (!getData().isInitialized()) {
5084                  
5085                  return false;
5086                }
5087              }
5088              return true;
5089            }
5090    
5091            public Builder mergeFrom(
5092                com.google.protobuf.CodedInputStream input,
5093                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5094                throws java.io.IOException {
5095              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject parsedMessage = null;
5096              try {
5097                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
5098              } catch (com.google.protobuf.InvalidProtocolBufferException e) {
5099                parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject) e.getUnfinishedMessage();
5100                throw e;
5101              } finally {
5102                if (parsedMessage != null) {
5103                  mergeFrom(parsedMessage);
5104                }
5105              }
5106              return this;
5107            }
5108            private int bitField0_;
5109    
5110            // optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;
5111            private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class data_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.getDefaultInstance();
5112            /**
5113             * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
5114             *
5115             * <pre>
5116             * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
5117             * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
5118             * </pre>
5119             */
5120            public boolean hasData() {
5121              return ((bitField0_ & 0x00000001) == 0x00000001);
5122            }
5123            /**
5124             * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
5125             *
5126             * <pre>
5127             * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
5128             * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
5129             * </pre>
5130             */
5131            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class getData() {
5132              return data_;
5133            }
5134            /**
5135             * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
5136             *
5137             * <pre>
5138             * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
5139             * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
5140             * </pre>
5141             */
5142            public Builder setData(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class value) {
5143              if (value == null) {
5144                throw new NullPointerException();
5145              }
5146              data_ = value;
5147    
5148              bitField0_ |= 0x00000001;
5149              return this;
5150            }
5151            /**
5152             * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
5153             *
5154             * <pre>
5155             * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
5156             * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
5157             * </pre>
5158             */
5159            public Builder setData(
5160                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.Builder builderForValue) {
5161              data_ = builderForValue.build();
5162    
5163              bitField0_ |= 0x00000001;
5164              return this;
5165            }
5166            /**
5167             * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
5168             *
5169             * <pre>
5170             * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
5171             * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
5172             * </pre>
5173             */
5174            public Builder mergeData(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class value) {
5175              if (((bitField0_ & 0x00000001) == 0x00000001) &&
5176                  data_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.getDefaultInstance()) {
5177                data_ =
5178                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.newBuilder(data_).mergeFrom(value).buildPartial();
5179              } else {
5180                data_ = value;
5181              }
5182    
5183              bitField0_ |= 0x00000001;
5184              return this;
5185            }
5186            /**
5187             * <code>optional .org.jetbrains.jet.descriptors.serialization.Class data = 1;</code>
5188             *
5189             * <pre>
5190             * If this field is present, it contains serialized data for a synthetic class object, for which there's no class file.
5191             * Otherwise class object was compiled to a separate class file and serialized data can be found in the annotation on that class
5192             * </pre>
5193             */
5194            public Builder clearData() {
5195              data_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.getDefaultInstance();
5196    
5197              bitField0_ = (bitField0_ & ~0x00000001);
5198              return this;
5199            }
5200    
5201            // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Class.ClassObject)
5202          }
5203    
5204          static {
5205            defaultInstance = new ClassObject(true);
5206            defaultInstance.initFields();
5207          }
5208    
5209          // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Class.ClassObject)
5210        }
5211    
5212        public interface PrimaryConstructorOrBuilder
5213            extends com.google.protobuf.MessageLiteOrBuilder {
5214    
5215          // optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;
5216          /**
5217           * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5218           *
5219           * <pre>
5220           * If this field is present, it contains serialized data for the primary constructor.
5221           * Otherwise it's default and can be created manually upon deserialization
5222           * </pre>
5223           */
5224          boolean hasData();
5225          /**
5226           * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5227           *
5228           * <pre>
5229           * If this field is present, it contains serialized data for the primary constructor.
5230           * Otherwise it's default and can be created manually upon deserialization
5231           * </pre>
5232           */
5233          org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getData();
5234        }
5235        /**
5236         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor}
5237         */
5238        public static final class PrimaryConstructor extends
5239            com.google.protobuf.GeneratedMessageLite
5240            implements PrimaryConstructorOrBuilder {
5241          // Use PrimaryConstructor.newBuilder() to construct.
5242          private PrimaryConstructor(com.google.protobuf.GeneratedMessageLite.Builder builder) {
5243            super(builder);
5244    
5245          }
5246          private PrimaryConstructor(boolean noInit) {}
5247    
5248          private static final PrimaryConstructor defaultInstance;
5249          public static PrimaryConstructor getDefaultInstance() {
5250            return defaultInstance;
5251          }
5252    
5253          public PrimaryConstructor getDefaultInstanceForType() {
5254            return defaultInstance;
5255          }
5256    
5257          private PrimaryConstructor(
5258              com.google.protobuf.CodedInputStream input,
5259              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5260              throws com.google.protobuf.InvalidProtocolBufferException {
5261            initFields();
5262            int mutable_bitField0_ = 0;
5263            try {
5264              boolean done = false;
5265              while (!done) {
5266                int tag = input.readTag();
5267                switch (tag) {
5268                  case 0:
5269                    done = true;
5270                    break;
5271                  default: {
5272                    if (!parseUnknownField(input,
5273                                           extensionRegistry, tag)) {
5274                      done = true;
5275                    }
5276                    break;
5277                  }
5278                  case 10: {
5279                    org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.Builder subBuilder = null;
5280                    if (((bitField0_ & 0x00000001) == 0x00000001)) {
5281                      subBuilder = data_.toBuilder();
5282                    }
5283                    data_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.PARSER, extensionRegistry);
5284                    if (subBuilder != null) {
5285                      subBuilder.mergeFrom(data_);
5286                      data_ = subBuilder.buildPartial();
5287                    }
5288                    bitField0_ |= 0x00000001;
5289                    break;
5290                  }
5291                }
5292              }
5293            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
5294              throw e.setUnfinishedMessage(this);
5295            } catch (java.io.IOException e) {
5296              throw new com.google.protobuf.InvalidProtocolBufferException(
5297                  e.getMessage()).setUnfinishedMessage(this);
5298            } finally {
5299              makeExtensionsImmutable();
5300            }
5301          }
5302          public static com.google.protobuf.Parser<PrimaryConstructor> PARSER =
5303              new com.google.protobuf.AbstractParser<PrimaryConstructor>() {
5304            public PrimaryConstructor parsePartialFrom(
5305                com.google.protobuf.CodedInputStream input,
5306                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5307                throws com.google.protobuf.InvalidProtocolBufferException {
5308              return new PrimaryConstructor(input, extensionRegistry);
5309            }
5310          };
5311    
5312          @java.lang.Override
5313          public com.google.protobuf.Parser<PrimaryConstructor> getParserForType() {
5314            return PARSER;
5315          }
5316    
5317          private int bitField0_;
5318          // optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;
5319          public static final int DATA_FIELD_NUMBER = 1;
5320          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable data_;
5321          /**
5322           * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5323           *
5324           * <pre>
5325           * If this field is present, it contains serialized data for the primary constructor.
5326           * Otherwise it's default and can be created manually upon deserialization
5327           * </pre>
5328           */
5329          public boolean hasData() {
5330            return ((bitField0_ & 0x00000001) == 0x00000001);
5331          }
5332          /**
5333           * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5334           *
5335           * <pre>
5336           * If this field is present, it contains serialized data for the primary constructor.
5337           * Otherwise it's default and can be created manually upon deserialization
5338           * </pre>
5339           */
5340          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getData() {
5341            return data_;
5342          }
5343    
5344          private void initFields() {
5345            data_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.getDefaultInstance();
5346          }
5347          private byte memoizedIsInitialized = -1;
5348          public final boolean isInitialized() {
5349            byte isInitialized = memoizedIsInitialized;
5350            if (isInitialized != -1) return isInitialized == 1;
5351    
5352            if (hasData()) {
5353              if (!getData().isInitialized()) {
5354                memoizedIsInitialized = 0;
5355                return false;
5356              }
5357            }
5358            memoizedIsInitialized = 1;
5359            return true;
5360          }
5361    
5362          public void writeTo(com.google.protobuf.CodedOutputStream output)
5363                              throws java.io.IOException {
5364            getSerializedSize();
5365            if (((bitField0_ & 0x00000001) == 0x00000001)) {
5366              output.writeMessage(1, data_);
5367            }
5368          }
5369    
5370          private int memoizedSerializedSize = -1;
5371          public int getSerializedSize() {
5372            int size = memoizedSerializedSize;
5373            if (size != -1) return size;
5374    
5375            size = 0;
5376            if (((bitField0_ & 0x00000001) == 0x00000001)) {
5377              size += com.google.protobuf.CodedOutputStream
5378                .computeMessageSize(1, data_);
5379            }
5380            memoizedSerializedSize = size;
5381            return size;
5382          }
5383    
5384          private static final long serialVersionUID = 0L;
5385          @java.lang.Override
5386          protected java.lang.Object writeReplace()
5387              throws java.io.ObjectStreamException {
5388            return super.writeReplace();
5389          }
5390    
5391          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseFrom(
5392              com.google.protobuf.ByteString data)
5393              throws com.google.protobuf.InvalidProtocolBufferException {
5394            return PARSER.parseFrom(data);
5395          }
5396          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseFrom(
5397              com.google.protobuf.ByteString data,
5398              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5399              throws com.google.protobuf.InvalidProtocolBufferException {
5400            return PARSER.parseFrom(data, extensionRegistry);
5401          }
5402          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseFrom(byte[] data)
5403              throws com.google.protobuf.InvalidProtocolBufferException {
5404            return PARSER.parseFrom(data);
5405          }
5406          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseFrom(
5407              byte[] data,
5408              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5409              throws com.google.protobuf.InvalidProtocolBufferException {
5410            return PARSER.parseFrom(data, extensionRegistry);
5411          }
5412          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseFrom(java.io.InputStream input)
5413              throws java.io.IOException {
5414            return PARSER.parseFrom(input);
5415          }
5416          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseFrom(
5417              java.io.InputStream input,
5418              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5419              throws java.io.IOException {
5420            return PARSER.parseFrom(input, extensionRegistry);
5421          }
5422          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseDelimitedFrom(java.io.InputStream input)
5423              throws java.io.IOException {
5424            return PARSER.parseDelimitedFrom(input);
5425          }
5426          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseDelimitedFrom(
5427              java.io.InputStream input,
5428              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5429              throws java.io.IOException {
5430            return PARSER.parseDelimitedFrom(input, extensionRegistry);
5431          }
5432          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseFrom(
5433              com.google.protobuf.CodedInputStream input)
5434              throws java.io.IOException {
5435            return PARSER.parseFrom(input);
5436          }
5437          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parseFrom(
5438              com.google.protobuf.CodedInputStream input,
5439              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5440              throws java.io.IOException {
5441            return PARSER.parseFrom(input, extensionRegistry);
5442          }
5443    
5444          public static Builder newBuilder() { return Builder.create(); }
5445          public Builder newBuilderForType() { return newBuilder(); }
5446          public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor prototype) {
5447            return newBuilder().mergeFrom(prototype);
5448          }
5449          public Builder toBuilder() { return newBuilder(this); }
5450    
5451          /**
5452           * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor}
5453           */
5454          public static final class Builder extends
5455              com.google.protobuf.GeneratedMessageLite.Builder<
5456                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor, Builder>
5457              implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructorOrBuilder {
5458            // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.newBuilder()
5459            private Builder() {
5460              maybeForceBuilderInitialization();
5461            }
5462    
5463            private void maybeForceBuilderInitialization() {
5464            }
5465            private static Builder create() {
5466              return new Builder();
5467            }
5468    
5469            public Builder clear() {
5470              super.clear();
5471              data_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.getDefaultInstance();
5472              bitField0_ = (bitField0_ & ~0x00000001);
5473              return this;
5474            }
5475    
5476            public Builder clone() {
5477              return create().mergeFrom(buildPartial());
5478            }
5479    
5480            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor getDefaultInstanceForType() {
5481              return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.getDefaultInstance();
5482            }
5483    
5484            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor build() {
5485              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor result = buildPartial();
5486              if (!result.isInitialized()) {
5487                throw newUninitializedMessageException(result);
5488              }
5489              return result;
5490            }
5491    
5492            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor buildPartial() {
5493              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor(this);
5494              int from_bitField0_ = bitField0_;
5495              int to_bitField0_ = 0;
5496              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
5497                to_bitField0_ |= 0x00000001;
5498              }
5499              result.data_ = data_;
5500              result.bitField0_ = to_bitField0_;
5501              return result;
5502            }
5503    
5504            public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor other) {
5505              if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.getDefaultInstance()) return this;
5506              if (other.hasData()) {
5507                mergeData(other.getData());
5508              }
5509              return this;
5510            }
5511    
5512            public final boolean isInitialized() {
5513              if (hasData()) {
5514                if (!getData().isInitialized()) {
5515                  
5516                  return false;
5517                }
5518              }
5519              return true;
5520            }
5521    
5522            public Builder mergeFrom(
5523                com.google.protobuf.CodedInputStream input,
5524                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
5525                throws java.io.IOException {
5526              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor parsedMessage = null;
5527              try {
5528                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
5529              } catch (com.google.protobuf.InvalidProtocolBufferException e) {
5530                parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor) e.getUnfinishedMessage();
5531                throw e;
5532              } finally {
5533                if (parsedMessage != null) {
5534                  mergeFrom(parsedMessage);
5535                }
5536              }
5537              return this;
5538            }
5539            private int bitField0_;
5540    
5541            // optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;
5542            private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable data_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.getDefaultInstance();
5543            /**
5544             * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5545             *
5546             * <pre>
5547             * If this field is present, it contains serialized data for the primary constructor.
5548             * Otherwise it's default and can be created manually upon deserialization
5549             * </pre>
5550             */
5551            public boolean hasData() {
5552              return ((bitField0_ & 0x00000001) == 0x00000001);
5553            }
5554            /**
5555             * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5556             *
5557             * <pre>
5558             * If this field is present, it contains serialized data for the primary constructor.
5559             * Otherwise it's default and can be created manually upon deserialization
5560             * </pre>
5561             */
5562            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getData() {
5563              return data_;
5564            }
5565            /**
5566             * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5567             *
5568             * <pre>
5569             * If this field is present, it contains serialized data for the primary constructor.
5570             * Otherwise it's default and can be created manually upon deserialization
5571             * </pre>
5572             */
5573            public Builder setData(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable value) {
5574              if (value == null) {
5575                throw new NullPointerException();
5576              }
5577              data_ = value;
5578    
5579              bitField0_ |= 0x00000001;
5580              return this;
5581            }
5582            /**
5583             * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5584             *
5585             * <pre>
5586             * If this field is present, it contains serialized data for the primary constructor.
5587             * Otherwise it's default and can be created manually upon deserialization
5588             * </pre>
5589             */
5590            public Builder setData(
5591                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.Builder builderForValue) {
5592              data_ = builderForValue.build();
5593    
5594              bitField0_ |= 0x00000001;
5595              return this;
5596            }
5597            /**
5598             * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5599             *
5600             * <pre>
5601             * If this field is present, it contains serialized data for the primary constructor.
5602             * Otherwise it's default and can be created manually upon deserialization
5603             * </pre>
5604             */
5605            public Builder mergeData(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable value) {
5606              if (((bitField0_ & 0x00000001) == 0x00000001) &&
5607                  data_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.getDefaultInstance()) {
5608                data_ =
5609                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.newBuilder(data_).mergeFrom(value).buildPartial();
5610              } else {
5611                data_ = value;
5612              }
5613    
5614              bitField0_ |= 0x00000001;
5615              return this;
5616            }
5617            /**
5618             * <code>optional .org.jetbrains.jet.descriptors.serialization.Callable data = 1;</code>
5619             *
5620             * <pre>
5621             * If this field is present, it contains serialized data for the primary constructor.
5622             * Otherwise it's default and can be created manually upon deserialization
5623             * </pre>
5624             */
5625            public Builder clearData() {
5626              data_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.getDefaultInstance();
5627    
5628              bitField0_ = (bitField0_ & ~0x00000001);
5629              return this;
5630            }
5631    
5632            // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor)
5633          }
5634    
5635          static {
5636            defaultInstance = new PrimaryConstructor(true);
5637            defaultInstance.initFields();
5638          }
5639    
5640          // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor)
5641        }
5642    
5643        private int bitField0_;
5644        // optional int32 flags = 1 [default = 0];
5645        public static final int FLAGS_FIELD_NUMBER = 1;
5646        private int flags_;
5647        /**
5648         * <code>optional int32 flags = 1 [default = 0];</code>
5649         *
5650         * <pre>
5651         *
5652         *Visibility
5653         *Modality
5654         *has_annotation
5655         *ClassKind
5656         *is_inner
5657         * </pre>
5658         */
5659        public boolean hasFlags() {
5660          return ((bitField0_ & 0x00000001) == 0x00000001);
5661        }
5662        /**
5663         * <code>optional int32 flags = 1 [default = 0];</code>
5664         *
5665         * <pre>
5666         *
5667         *Visibility
5668         *Modality
5669         *has_annotation
5670         *ClassKind
5671         *is_inner
5672         * </pre>
5673         */
5674        public int getFlags() {
5675          return flags_;
5676        }
5677    
5678        // optional string extra_visibility = 2;
5679        public static final int EXTRA_VISIBILITY_FIELD_NUMBER = 2;
5680        private java.lang.Object extraVisibility_;
5681        /**
5682         * <code>optional string extra_visibility = 2;</code>
5683         *
5684         * <pre>
5685         * for things like java-specific visibilities
5686         * </pre>
5687         */
5688        public boolean hasExtraVisibility() {
5689          return ((bitField0_ & 0x00000002) == 0x00000002);
5690        }
5691        /**
5692         * <code>optional string extra_visibility = 2;</code>
5693         *
5694         * <pre>
5695         * for things like java-specific visibilities
5696         * </pre>
5697         */
5698        public java.lang.String getExtraVisibility() {
5699          java.lang.Object ref = extraVisibility_;
5700          if (ref instanceof java.lang.String) {
5701            return (java.lang.String) ref;
5702          } else {
5703            com.google.protobuf.ByteString bs = 
5704                (com.google.protobuf.ByteString) ref;
5705            java.lang.String s = bs.toStringUtf8();
5706            if (bs.isValidUtf8()) {
5707              extraVisibility_ = s;
5708            }
5709            return s;
5710          }
5711        }
5712        /**
5713         * <code>optional string extra_visibility = 2;</code>
5714         *
5715         * <pre>
5716         * for things like java-specific visibilities
5717         * </pre>
5718         */
5719        public com.google.protobuf.ByteString
5720            getExtraVisibilityBytes() {
5721          java.lang.Object ref = extraVisibility_;
5722          if (ref instanceof java.lang.String) {
5723            com.google.protobuf.ByteString b = 
5724                com.google.protobuf.ByteString.copyFromUtf8(
5725                    (java.lang.String) ref);
5726            extraVisibility_ = b;
5727            return b;
5728          } else {
5729            return (com.google.protobuf.ByteString) ref;
5730          }
5731        }
5732    
5733        // required int32 fq_name = 3;
5734        public static final int FQ_NAME_FIELD_NUMBER = 3;
5735        private int fqName_;
5736        /**
5737         * <code>required int32 fq_name = 3;</code>
5738         */
5739        public boolean hasFqName() {
5740          return ((bitField0_ & 0x00000004) == 0x00000004);
5741        }
5742        /**
5743         * <code>required int32 fq_name = 3;</code>
5744         */
5745        public int getFqName() {
5746          return fqName_;
5747        }
5748    
5749        // optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;
5750        public static final int CLASS_OBJECT_FIELD_NUMBER = 4;
5751        private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject classObject_;
5752        /**
5753         * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
5754         *
5755         * <pre>
5756         * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
5757         * </pre>
5758         */
5759        public boolean hasClassObject() {
5760          return ((bitField0_ & 0x00000008) == 0x00000008);
5761        }
5762        /**
5763         * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
5764         *
5765         * <pre>
5766         * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
5767         * </pre>
5768         */
5769        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject getClassObject() {
5770          return classObject_;
5771        }
5772    
5773        // repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;
5774        public static final int TYPE_PARAMETER_FIELD_NUMBER = 5;
5775        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> typeParameter_;
5776        /**
5777         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
5778         */
5779        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> getTypeParameterList() {
5780          return typeParameter_;
5781        }
5782        /**
5783         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
5784         */
5785        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameterOrBuilder> 
5786            getTypeParameterOrBuilderList() {
5787          return typeParameter_;
5788        }
5789        /**
5790         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
5791         */
5792        public int getTypeParameterCount() {
5793          return typeParameter_.size();
5794        }
5795        /**
5796         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
5797         */
5798        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter getTypeParameter(int index) {
5799          return typeParameter_.get(index);
5800        }
5801        /**
5802         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
5803         */
5804        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameterOrBuilder getTypeParameterOrBuilder(
5805            int index) {
5806          return typeParameter_.get(index);
5807        }
5808    
5809        // repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;
5810        public static final int SUPERTYPE_FIELD_NUMBER = 6;
5811        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> supertype_;
5812        /**
5813         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
5814         */
5815        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> getSupertypeList() {
5816          return supertype_;
5817        }
5818        /**
5819         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
5820         */
5821        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeOrBuilder> 
5822            getSupertypeOrBuilderList() {
5823          return supertype_;
5824        }
5825        /**
5826         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
5827         */
5828        public int getSupertypeCount() {
5829          return supertype_.size();
5830        }
5831        /**
5832         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
5833         */
5834        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getSupertype(int index) {
5835          return supertype_.get(index);
5836        }
5837        /**
5838         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
5839         */
5840        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeOrBuilder getSupertypeOrBuilder(
5841            int index) {
5842          return supertype_.get(index);
5843        }
5844    
5845        // repeated int32 nested_class_name = 7;
5846        public static final int NESTED_CLASS_NAME_FIELD_NUMBER = 7;
5847        private java.util.List<java.lang.Integer> nestedClassName_;
5848        /**
5849         * <code>repeated int32 nested_class_name = 7;</code>
5850         *
5851         * <pre>
5852         * we store only names, because the actual information must reside in the corresponding .class files,
5853         * to be obtainable through reflection at runtime
5854         * </pre>
5855         */
5856        public java.util.List<java.lang.Integer>
5857            getNestedClassNameList() {
5858          return nestedClassName_;
5859        }
5860        /**
5861         * <code>repeated int32 nested_class_name = 7;</code>
5862         *
5863         * <pre>
5864         * we store only names, because the actual information must reside in the corresponding .class files,
5865         * to be obtainable through reflection at runtime
5866         * </pre>
5867         */
5868        public int getNestedClassNameCount() {
5869          return nestedClassName_.size();
5870        }
5871        /**
5872         * <code>repeated int32 nested_class_name = 7;</code>
5873         *
5874         * <pre>
5875         * we store only names, because the actual information must reside in the corresponding .class files,
5876         * to be obtainable through reflection at runtime
5877         * </pre>
5878         */
5879        public int getNestedClassName(int index) {
5880          return nestedClassName_.get(index);
5881        }
5882    
5883        // repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;
5884        public static final int MEMBER_FIELD_NUMBER = 11;
5885        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> member_;
5886        /**
5887         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
5888         */
5889        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> getMemberList() {
5890          return member_;
5891        }
5892        /**
5893         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
5894         */
5895        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.CallableOrBuilder> 
5896            getMemberOrBuilderList() {
5897          return member_;
5898        }
5899        /**
5900         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
5901         */
5902        public int getMemberCount() {
5903          return member_.size();
5904        }
5905        /**
5906         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
5907         */
5908        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getMember(int index) {
5909          return member_.get(index);
5910        }
5911        /**
5912         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
5913         */
5914        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.CallableOrBuilder getMemberOrBuilder(
5915            int index) {
5916          return member_.get(index);
5917        }
5918    
5919        // repeated int32 enum_entry = 12;
5920        public static final int ENUM_ENTRY_FIELD_NUMBER = 12;
5921        private java.util.List<java.lang.Integer> enumEntry_;
5922        /**
5923         * <code>repeated int32 enum_entry = 12;</code>
5924         */
5925        public java.util.List<java.lang.Integer>
5926            getEnumEntryList() {
5927          return enumEntry_;
5928        }
5929        /**
5930         * <code>repeated int32 enum_entry = 12;</code>
5931         */
5932        public int getEnumEntryCount() {
5933          return enumEntry_.size();
5934        }
5935        /**
5936         * <code>repeated int32 enum_entry = 12;</code>
5937         */
5938        public int getEnumEntry(int index) {
5939          return enumEntry_.get(index);
5940        }
5941    
5942        // optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;
5943        public static final int PRIMARY_CONSTRUCTOR_FIELD_NUMBER = 13;
5944        private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor primaryConstructor_;
5945        /**
5946         * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
5947         *
5948         * <pre>
5949         * This field is present if and only if the class has a primary constructor
5950         * </pre>
5951         */
5952        public boolean hasPrimaryConstructor() {
5953          return ((bitField0_ & 0x00000010) == 0x00000010);
5954        }
5955        /**
5956         * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
5957         *
5958         * <pre>
5959         * This field is present if and only if the class has a primary constructor
5960         * </pre>
5961         */
5962        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor getPrimaryConstructor() {
5963          return primaryConstructor_;
5964        }
5965    
5966        private void initFields() {
5967          flags_ = 0;
5968          extraVisibility_ = "";
5969          fqName_ = 0;
5970          classObject_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.getDefaultInstance();
5971          typeParameter_ = java.util.Collections.emptyList();
5972          supertype_ = java.util.Collections.emptyList();
5973          nestedClassName_ = java.util.Collections.emptyList();
5974          member_ = java.util.Collections.emptyList();
5975          enumEntry_ = java.util.Collections.emptyList();
5976          primaryConstructor_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.getDefaultInstance();
5977        }
5978        private byte memoizedIsInitialized = -1;
5979        public final boolean isInitialized() {
5980          byte isInitialized = memoizedIsInitialized;
5981          if (isInitialized != -1) return isInitialized == 1;
5982    
5983          if (!hasFqName()) {
5984            memoizedIsInitialized = 0;
5985            return false;
5986          }
5987          if (hasClassObject()) {
5988            if (!getClassObject().isInitialized()) {
5989              memoizedIsInitialized = 0;
5990              return false;
5991            }
5992          }
5993          for (int i = 0; i < getTypeParameterCount(); i++) {
5994            if (!getTypeParameter(i).isInitialized()) {
5995              memoizedIsInitialized = 0;
5996              return false;
5997            }
5998          }
5999          for (int i = 0; i < getSupertypeCount(); i++) {
6000            if (!getSupertype(i).isInitialized()) {
6001              memoizedIsInitialized = 0;
6002              return false;
6003            }
6004          }
6005          for (int i = 0; i < getMemberCount(); i++) {
6006            if (!getMember(i).isInitialized()) {
6007              memoizedIsInitialized = 0;
6008              return false;
6009            }
6010          }
6011          if (hasPrimaryConstructor()) {
6012            if (!getPrimaryConstructor().isInitialized()) {
6013              memoizedIsInitialized = 0;
6014              return false;
6015            }
6016          }
6017          memoizedIsInitialized = 1;
6018          return true;
6019        }
6020    
6021        public void writeTo(com.google.protobuf.CodedOutputStream output)
6022                            throws java.io.IOException {
6023          getSerializedSize();
6024          if (((bitField0_ & 0x00000001) == 0x00000001)) {
6025            output.writeInt32(1, flags_);
6026          }
6027          if (((bitField0_ & 0x00000002) == 0x00000002)) {
6028            output.writeBytes(2, getExtraVisibilityBytes());
6029          }
6030          if (((bitField0_ & 0x00000004) == 0x00000004)) {
6031            output.writeInt32(3, fqName_);
6032          }
6033          if (((bitField0_ & 0x00000008) == 0x00000008)) {
6034            output.writeMessage(4, classObject_);
6035          }
6036          for (int i = 0; i < typeParameter_.size(); i++) {
6037            output.writeMessage(5, typeParameter_.get(i));
6038          }
6039          for (int i = 0; i < supertype_.size(); i++) {
6040            output.writeMessage(6, supertype_.get(i));
6041          }
6042          for (int i = 0; i < nestedClassName_.size(); i++) {
6043            output.writeInt32(7, nestedClassName_.get(i));
6044          }
6045          for (int i = 0; i < member_.size(); i++) {
6046            output.writeMessage(11, member_.get(i));
6047          }
6048          for (int i = 0; i < enumEntry_.size(); i++) {
6049            output.writeInt32(12, enumEntry_.get(i));
6050          }
6051          if (((bitField0_ & 0x00000010) == 0x00000010)) {
6052            output.writeMessage(13, primaryConstructor_);
6053          }
6054        }
6055    
6056        private int memoizedSerializedSize = -1;
6057        public int getSerializedSize() {
6058          int size = memoizedSerializedSize;
6059          if (size != -1) return size;
6060    
6061          size = 0;
6062          if (((bitField0_ & 0x00000001) == 0x00000001)) {
6063            size += com.google.protobuf.CodedOutputStream
6064              .computeInt32Size(1, flags_);
6065          }
6066          if (((bitField0_ & 0x00000002) == 0x00000002)) {
6067            size += com.google.protobuf.CodedOutputStream
6068              .computeBytesSize(2, getExtraVisibilityBytes());
6069          }
6070          if (((bitField0_ & 0x00000004) == 0x00000004)) {
6071            size += com.google.protobuf.CodedOutputStream
6072              .computeInt32Size(3, fqName_);
6073          }
6074          if (((bitField0_ & 0x00000008) == 0x00000008)) {
6075            size += com.google.protobuf.CodedOutputStream
6076              .computeMessageSize(4, classObject_);
6077          }
6078          for (int i = 0; i < typeParameter_.size(); i++) {
6079            size += com.google.protobuf.CodedOutputStream
6080              .computeMessageSize(5, typeParameter_.get(i));
6081          }
6082          for (int i = 0; i < supertype_.size(); i++) {
6083            size += com.google.protobuf.CodedOutputStream
6084              .computeMessageSize(6, supertype_.get(i));
6085          }
6086          {
6087            int dataSize = 0;
6088            for (int i = 0; i < nestedClassName_.size(); i++) {
6089              dataSize += com.google.protobuf.CodedOutputStream
6090                .computeInt32SizeNoTag(nestedClassName_.get(i));
6091            }
6092            size += dataSize;
6093            size += 1 * getNestedClassNameList().size();
6094          }
6095          for (int i = 0; i < member_.size(); i++) {
6096            size += com.google.protobuf.CodedOutputStream
6097              .computeMessageSize(11, member_.get(i));
6098          }
6099          {
6100            int dataSize = 0;
6101            for (int i = 0; i < enumEntry_.size(); i++) {
6102              dataSize += com.google.protobuf.CodedOutputStream
6103                .computeInt32SizeNoTag(enumEntry_.get(i));
6104            }
6105            size += dataSize;
6106            size += 1 * getEnumEntryList().size();
6107          }
6108          if (((bitField0_ & 0x00000010) == 0x00000010)) {
6109            size += com.google.protobuf.CodedOutputStream
6110              .computeMessageSize(13, primaryConstructor_);
6111          }
6112          memoizedSerializedSize = size;
6113          return size;
6114        }
6115    
6116        private static final long serialVersionUID = 0L;
6117        @java.lang.Override
6118        protected java.lang.Object writeReplace()
6119            throws java.io.ObjectStreamException {
6120          return super.writeReplace();
6121        }
6122    
6123        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseFrom(
6124            com.google.protobuf.ByteString data)
6125            throws com.google.protobuf.InvalidProtocolBufferException {
6126          return PARSER.parseFrom(data);
6127        }
6128        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseFrom(
6129            com.google.protobuf.ByteString data,
6130            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6131            throws com.google.protobuf.InvalidProtocolBufferException {
6132          return PARSER.parseFrom(data, extensionRegistry);
6133        }
6134        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseFrom(byte[] data)
6135            throws com.google.protobuf.InvalidProtocolBufferException {
6136          return PARSER.parseFrom(data);
6137        }
6138        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseFrom(
6139            byte[] data,
6140            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6141            throws com.google.protobuf.InvalidProtocolBufferException {
6142          return PARSER.parseFrom(data, extensionRegistry);
6143        }
6144        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseFrom(java.io.InputStream input)
6145            throws java.io.IOException {
6146          return PARSER.parseFrom(input);
6147        }
6148        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseFrom(
6149            java.io.InputStream input,
6150            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6151            throws java.io.IOException {
6152          return PARSER.parseFrom(input, extensionRegistry);
6153        }
6154        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseDelimitedFrom(java.io.InputStream input)
6155            throws java.io.IOException {
6156          return PARSER.parseDelimitedFrom(input);
6157        }
6158        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseDelimitedFrom(
6159            java.io.InputStream input,
6160            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6161            throws java.io.IOException {
6162          return PARSER.parseDelimitedFrom(input, extensionRegistry);
6163        }
6164        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseFrom(
6165            com.google.protobuf.CodedInputStream input)
6166            throws java.io.IOException {
6167          return PARSER.parseFrom(input);
6168        }
6169        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parseFrom(
6170            com.google.protobuf.CodedInputStream input,
6171            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6172            throws java.io.IOException {
6173          return PARSER.parseFrom(input, extensionRegistry);
6174        }
6175    
6176        public static Builder newBuilder() { return Builder.create(); }
6177        public Builder newBuilderForType() { return newBuilder(); }
6178        public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class prototype) {
6179          return newBuilder().mergeFrom(prototype);
6180        }
6181        public Builder toBuilder() { return newBuilder(this); }
6182    
6183        /**
6184         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Class}
6185         */
6186        public static final class Builder extends
6187            com.google.protobuf.GeneratedMessageLite.Builder<
6188              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class, Builder>
6189            implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.ClassOrBuilder {
6190          // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.newBuilder()
6191          private Builder() {
6192            maybeForceBuilderInitialization();
6193          }
6194    
6195          private void maybeForceBuilderInitialization() {
6196          }
6197          private static Builder create() {
6198            return new Builder();
6199          }
6200    
6201          public Builder clear() {
6202            super.clear();
6203            flags_ = 0;
6204            bitField0_ = (bitField0_ & ~0x00000001);
6205            extraVisibility_ = "";
6206            bitField0_ = (bitField0_ & ~0x00000002);
6207            fqName_ = 0;
6208            bitField0_ = (bitField0_ & ~0x00000004);
6209            classObject_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.getDefaultInstance();
6210            bitField0_ = (bitField0_ & ~0x00000008);
6211            typeParameter_ = java.util.Collections.emptyList();
6212            bitField0_ = (bitField0_ & ~0x00000010);
6213            supertype_ = java.util.Collections.emptyList();
6214            bitField0_ = (bitField0_ & ~0x00000020);
6215            nestedClassName_ = java.util.Collections.emptyList();
6216            bitField0_ = (bitField0_ & ~0x00000040);
6217            member_ = java.util.Collections.emptyList();
6218            bitField0_ = (bitField0_ & ~0x00000080);
6219            enumEntry_ = java.util.Collections.emptyList();
6220            bitField0_ = (bitField0_ & ~0x00000100);
6221            primaryConstructor_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.getDefaultInstance();
6222            bitField0_ = (bitField0_ & ~0x00000200);
6223            return this;
6224          }
6225    
6226          public Builder clone() {
6227            return create().mergeFrom(buildPartial());
6228          }
6229    
6230          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class getDefaultInstanceForType() {
6231            return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.getDefaultInstance();
6232          }
6233    
6234          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class build() {
6235            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class result = buildPartial();
6236            if (!result.isInitialized()) {
6237              throw newUninitializedMessageException(result);
6238            }
6239            return result;
6240          }
6241    
6242          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class buildPartial() {
6243            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class(this);
6244            int from_bitField0_ = bitField0_;
6245            int to_bitField0_ = 0;
6246            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
6247              to_bitField0_ |= 0x00000001;
6248            }
6249            result.flags_ = flags_;
6250            if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
6251              to_bitField0_ |= 0x00000002;
6252            }
6253            result.extraVisibility_ = extraVisibility_;
6254            if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
6255              to_bitField0_ |= 0x00000004;
6256            }
6257            result.fqName_ = fqName_;
6258            if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
6259              to_bitField0_ |= 0x00000008;
6260            }
6261            result.classObject_ = classObject_;
6262            if (((bitField0_ & 0x00000010) == 0x00000010)) {
6263              typeParameter_ = java.util.Collections.unmodifiableList(typeParameter_);
6264              bitField0_ = (bitField0_ & ~0x00000010);
6265            }
6266            result.typeParameter_ = typeParameter_;
6267            if (((bitField0_ & 0x00000020) == 0x00000020)) {
6268              supertype_ = java.util.Collections.unmodifiableList(supertype_);
6269              bitField0_ = (bitField0_ & ~0x00000020);
6270            }
6271            result.supertype_ = supertype_;
6272            if (((bitField0_ & 0x00000040) == 0x00000040)) {
6273              nestedClassName_ = java.util.Collections.unmodifiableList(nestedClassName_);
6274              bitField0_ = (bitField0_ & ~0x00000040);
6275            }
6276            result.nestedClassName_ = nestedClassName_;
6277            if (((bitField0_ & 0x00000080) == 0x00000080)) {
6278              member_ = java.util.Collections.unmodifiableList(member_);
6279              bitField0_ = (bitField0_ & ~0x00000080);
6280            }
6281            result.member_ = member_;
6282            if (((bitField0_ & 0x00000100) == 0x00000100)) {
6283              enumEntry_ = java.util.Collections.unmodifiableList(enumEntry_);
6284              bitField0_ = (bitField0_ & ~0x00000100);
6285            }
6286            result.enumEntry_ = enumEntry_;
6287            if (((from_bitField0_ & 0x00000200) == 0x00000200)) {
6288              to_bitField0_ |= 0x00000010;
6289            }
6290            result.primaryConstructor_ = primaryConstructor_;
6291            result.bitField0_ = to_bitField0_;
6292            return result;
6293          }
6294    
6295          public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class other) {
6296            if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.getDefaultInstance()) return this;
6297            if (other.hasFlags()) {
6298              setFlags(other.getFlags());
6299            }
6300            if (other.hasExtraVisibility()) {
6301              bitField0_ |= 0x00000002;
6302              extraVisibility_ = other.extraVisibility_;
6303              
6304            }
6305            if (other.hasFqName()) {
6306              setFqName(other.getFqName());
6307            }
6308            if (other.hasClassObject()) {
6309              mergeClassObject(other.getClassObject());
6310            }
6311            if (!other.typeParameter_.isEmpty()) {
6312              if (typeParameter_.isEmpty()) {
6313                typeParameter_ = other.typeParameter_;
6314                bitField0_ = (bitField0_ & ~0x00000010);
6315              } else {
6316                ensureTypeParameterIsMutable();
6317                typeParameter_.addAll(other.typeParameter_);
6318              }
6319              
6320            }
6321            if (!other.supertype_.isEmpty()) {
6322              if (supertype_.isEmpty()) {
6323                supertype_ = other.supertype_;
6324                bitField0_ = (bitField0_ & ~0x00000020);
6325              } else {
6326                ensureSupertypeIsMutable();
6327                supertype_.addAll(other.supertype_);
6328              }
6329              
6330            }
6331            if (!other.nestedClassName_.isEmpty()) {
6332              if (nestedClassName_.isEmpty()) {
6333                nestedClassName_ = other.nestedClassName_;
6334                bitField0_ = (bitField0_ & ~0x00000040);
6335              } else {
6336                ensureNestedClassNameIsMutable();
6337                nestedClassName_.addAll(other.nestedClassName_);
6338              }
6339              
6340            }
6341            if (!other.member_.isEmpty()) {
6342              if (member_.isEmpty()) {
6343                member_ = other.member_;
6344                bitField0_ = (bitField0_ & ~0x00000080);
6345              } else {
6346                ensureMemberIsMutable();
6347                member_.addAll(other.member_);
6348              }
6349              
6350            }
6351            if (!other.enumEntry_.isEmpty()) {
6352              if (enumEntry_.isEmpty()) {
6353                enumEntry_ = other.enumEntry_;
6354                bitField0_ = (bitField0_ & ~0x00000100);
6355              } else {
6356                ensureEnumEntryIsMutable();
6357                enumEntry_.addAll(other.enumEntry_);
6358              }
6359              
6360            }
6361            if (other.hasPrimaryConstructor()) {
6362              mergePrimaryConstructor(other.getPrimaryConstructor());
6363            }
6364            return this;
6365          }
6366    
6367          public final boolean isInitialized() {
6368            if (!hasFqName()) {
6369              
6370              return false;
6371            }
6372            if (hasClassObject()) {
6373              if (!getClassObject().isInitialized()) {
6374                
6375                return false;
6376              }
6377            }
6378            for (int i = 0; i < getTypeParameterCount(); i++) {
6379              if (!getTypeParameter(i).isInitialized()) {
6380                
6381                return false;
6382              }
6383            }
6384            for (int i = 0; i < getSupertypeCount(); i++) {
6385              if (!getSupertype(i).isInitialized()) {
6386                
6387                return false;
6388              }
6389            }
6390            for (int i = 0; i < getMemberCount(); i++) {
6391              if (!getMember(i).isInitialized()) {
6392                
6393                return false;
6394              }
6395            }
6396            if (hasPrimaryConstructor()) {
6397              if (!getPrimaryConstructor().isInitialized()) {
6398                
6399                return false;
6400              }
6401            }
6402            return true;
6403          }
6404    
6405          public Builder mergeFrom(
6406              com.google.protobuf.CodedInputStream input,
6407              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
6408              throws java.io.IOException {
6409            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class parsedMessage = null;
6410            try {
6411              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
6412            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
6413              parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class) e.getUnfinishedMessage();
6414              throw e;
6415            } finally {
6416              if (parsedMessage != null) {
6417                mergeFrom(parsedMessage);
6418              }
6419            }
6420            return this;
6421          }
6422          private int bitField0_;
6423    
6424          // optional int32 flags = 1 [default = 0];
6425          private int flags_ ;
6426          /**
6427           * <code>optional int32 flags = 1 [default = 0];</code>
6428           *
6429           * <pre>
6430           *
6431           *Visibility
6432           *Modality
6433           *has_annotation
6434           *ClassKind
6435           *is_inner
6436           * </pre>
6437           */
6438          public boolean hasFlags() {
6439            return ((bitField0_ & 0x00000001) == 0x00000001);
6440          }
6441          /**
6442           * <code>optional int32 flags = 1 [default = 0];</code>
6443           *
6444           * <pre>
6445           *
6446           *Visibility
6447           *Modality
6448           *has_annotation
6449           *ClassKind
6450           *is_inner
6451           * </pre>
6452           */
6453          public int getFlags() {
6454            return flags_;
6455          }
6456          /**
6457           * <code>optional int32 flags = 1 [default = 0];</code>
6458           *
6459           * <pre>
6460           *
6461           *Visibility
6462           *Modality
6463           *has_annotation
6464           *ClassKind
6465           *is_inner
6466           * </pre>
6467           */
6468          public Builder setFlags(int value) {
6469            bitField0_ |= 0x00000001;
6470            flags_ = value;
6471            
6472            return this;
6473          }
6474          /**
6475           * <code>optional int32 flags = 1 [default = 0];</code>
6476           *
6477           * <pre>
6478           *
6479           *Visibility
6480           *Modality
6481           *has_annotation
6482           *ClassKind
6483           *is_inner
6484           * </pre>
6485           */
6486          public Builder clearFlags() {
6487            bitField0_ = (bitField0_ & ~0x00000001);
6488            flags_ = 0;
6489            
6490            return this;
6491          }
6492    
6493          // optional string extra_visibility = 2;
6494          private java.lang.Object extraVisibility_ = "";
6495          /**
6496           * <code>optional string extra_visibility = 2;</code>
6497           *
6498           * <pre>
6499           * for things like java-specific visibilities
6500           * </pre>
6501           */
6502          public boolean hasExtraVisibility() {
6503            return ((bitField0_ & 0x00000002) == 0x00000002);
6504          }
6505          /**
6506           * <code>optional string extra_visibility = 2;</code>
6507           *
6508           * <pre>
6509           * for things like java-specific visibilities
6510           * </pre>
6511           */
6512          public java.lang.String getExtraVisibility() {
6513            java.lang.Object ref = extraVisibility_;
6514            if (!(ref instanceof java.lang.String)) {
6515              java.lang.String s = ((com.google.protobuf.ByteString) ref)
6516                  .toStringUtf8();
6517              extraVisibility_ = s;
6518              return s;
6519            } else {
6520              return (java.lang.String) ref;
6521            }
6522          }
6523          /**
6524           * <code>optional string extra_visibility = 2;</code>
6525           *
6526           * <pre>
6527           * for things like java-specific visibilities
6528           * </pre>
6529           */
6530          public com.google.protobuf.ByteString
6531              getExtraVisibilityBytes() {
6532            java.lang.Object ref = extraVisibility_;
6533            if (ref instanceof String) {
6534              com.google.protobuf.ByteString b = 
6535                  com.google.protobuf.ByteString.copyFromUtf8(
6536                      (java.lang.String) ref);
6537              extraVisibility_ = b;
6538              return b;
6539            } else {
6540              return (com.google.protobuf.ByteString) ref;
6541            }
6542          }
6543          /**
6544           * <code>optional string extra_visibility = 2;</code>
6545           *
6546           * <pre>
6547           * for things like java-specific visibilities
6548           * </pre>
6549           */
6550          public Builder setExtraVisibility(
6551              java.lang.String value) {
6552            if (value == null) {
6553        throw new NullPointerException();
6554      }
6555      bitField0_ |= 0x00000002;
6556            extraVisibility_ = value;
6557            
6558            return this;
6559          }
6560          /**
6561           * <code>optional string extra_visibility = 2;</code>
6562           *
6563           * <pre>
6564           * for things like java-specific visibilities
6565           * </pre>
6566           */
6567          public Builder clearExtraVisibility() {
6568            bitField0_ = (bitField0_ & ~0x00000002);
6569            extraVisibility_ = getDefaultInstance().getExtraVisibility();
6570            
6571            return this;
6572          }
6573          /**
6574           * <code>optional string extra_visibility = 2;</code>
6575           *
6576           * <pre>
6577           * for things like java-specific visibilities
6578           * </pre>
6579           */
6580          public Builder setExtraVisibilityBytes(
6581              com.google.protobuf.ByteString value) {
6582            if (value == null) {
6583        throw new NullPointerException();
6584      }
6585      bitField0_ |= 0x00000002;
6586            extraVisibility_ = value;
6587            
6588            return this;
6589          }
6590    
6591          // required int32 fq_name = 3;
6592          private int fqName_ ;
6593          /**
6594           * <code>required int32 fq_name = 3;</code>
6595           */
6596          public boolean hasFqName() {
6597            return ((bitField0_ & 0x00000004) == 0x00000004);
6598          }
6599          /**
6600           * <code>required int32 fq_name = 3;</code>
6601           */
6602          public int getFqName() {
6603            return fqName_;
6604          }
6605          /**
6606           * <code>required int32 fq_name = 3;</code>
6607           */
6608          public Builder setFqName(int value) {
6609            bitField0_ |= 0x00000004;
6610            fqName_ = value;
6611            
6612            return this;
6613          }
6614          /**
6615           * <code>required int32 fq_name = 3;</code>
6616           */
6617          public Builder clearFqName() {
6618            bitField0_ = (bitField0_ & ~0x00000004);
6619            fqName_ = 0;
6620            
6621            return this;
6622          }
6623    
6624          // optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;
6625          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject classObject_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.getDefaultInstance();
6626          /**
6627           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
6628           *
6629           * <pre>
6630           * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
6631           * </pre>
6632           */
6633          public boolean hasClassObject() {
6634            return ((bitField0_ & 0x00000008) == 0x00000008);
6635          }
6636          /**
6637           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
6638           *
6639           * <pre>
6640           * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
6641           * </pre>
6642           */
6643          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject getClassObject() {
6644            return classObject_;
6645          }
6646          /**
6647           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
6648           *
6649           * <pre>
6650           * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
6651           * </pre>
6652           */
6653          public Builder setClassObject(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject value) {
6654            if (value == null) {
6655              throw new NullPointerException();
6656            }
6657            classObject_ = value;
6658    
6659            bitField0_ |= 0x00000008;
6660            return this;
6661          }
6662          /**
6663           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
6664           *
6665           * <pre>
6666           * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
6667           * </pre>
6668           */
6669          public Builder setClassObject(
6670              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.Builder builderForValue) {
6671            classObject_ = builderForValue.build();
6672    
6673            bitField0_ |= 0x00000008;
6674            return this;
6675          }
6676          /**
6677           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
6678           *
6679           * <pre>
6680           * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
6681           * </pre>
6682           */
6683          public Builder mergeClassObject(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject value) {
6684            if (((bitField0_ & 0x00000008) == 0x00000008) &&
6685                classObject_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.getDefaultInstance()) {
6686              classObject_ =
6687                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.newBuilder(classObject_).mergeFrom(value).buildPartial();
6688            } else {
6689              classObject_ = value;
6690            }
6691    
6692            bitField0_ |= 0x00000008;
6693            return this;
6694          }
6695          /**
6696           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.ClassObject class_object = 4;</code>
6697           *
6698           * <pre>
6699           * This field is present if and only if the class has a class object. Its proto should be found either here or in the separate file
6700           * </pre>
6701           */
6702          public Builder clearClassObject() {
6703            classObject_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.ClassObject.getDefaultInstance();
6704    
6705            bitField0_ = (bitField0_ & ~0x00000008);
6706            return this;
6707          }
6708    
6709          // repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;
6710          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> typeParameter_ =
6711            java.util.Collections.emptyList();
6712          private void ensureTypeParameterIsMutable() {
6713            if (!((bitField0_ & 0x00000010) == 0x00000010)) {
6714              typeParameter_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter>(typeParameter_);
6715              bitField0_ |= 0x00000010;
6716             }
6717          }
6718    
6719          /**
6720           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6721           */
6722          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> getTypeParameterList() {
6723            return java.util.Collections.unmodifiableList(typeParameter_);
6724          }
6725          /**
6726           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6727           */
6728          public int getTypeParameterCount() {
6729            return typeParameter_.size();
6730          }
6731          /**
6732           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6733           */
6734          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter getTypeParameter(int index) {
6735            return typeParameter_.get(index);
6736          }
6737          /**
6738           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6739           */
6740          public Builder setTypeParameter(
6741              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter value) {
6742            if (value == null) {
6743              throw new NullPointerException();
6744            }
6745            ensureTypeParameterIsMutable();
6746            typeParameter_.set(index, value);
6747    
6748            return this;
6749          }
6750          /**
6751           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6752           */
6753          public Builder setTypeParameter(
6754              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Builder builderForValue) {
6755            ensureTypeParameterIsMutable();
6756            typeParameter_.set(index, builderForValue.build());
6757    
6758            return this;
6759          }
6760          /**
6761           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6762           */
6763          public Builder addTypeParameter(org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter value) {
6764            if (value == null) {
6765              throw new NullPointerException();
6766            }
6767            ensureTypeParameterIsMutable();
6768            typeParameter_.add(value);
6769    
6770            return this;
6771          }
6772          /**
6773           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6774           */
6775          public Builder addTypeParameter(
6776              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter value) {
6777            if (value == null) {
6778              throw new NullPointerException();
6779            }
6780            ensureTypeParameterIsMutable();
6781            typeParameter_.add(index, value);
6782    
6783            return this;
6784          }
6785          /**
6786           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6787           */
6788          public Builder addTypeParameter(
6789              org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Builder builderForValue) {
6790            ensureTypeParameterIsMutable();
6791            typeParameter_.add(builderForValue.build());
6792    
6793            return this;
6794          }
6795          /**
6796           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6797           */
6798          public Builder addTypeParameter(
6799              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Builder builderForValue) {
6800            ensureTypeParameterIsMutable();
6801            typeParameter_.add(index, builderForValue.build());
6802    
6803            return this;
6804          }
6805          /**
6806           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6807           */
6808          public Builder addAllTypeParameter(
6809              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> values) {
6810            ensureTypeParameterIsMutable();
6811            super.addAll(values, typeParameter_);
6812    
6813            return this;
6814          }
6815          /**
6816           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6817           */
6818          public Builder clearTypeParameter() {
6819            typeParameter_ = java.util.Collections.emptyList();
6820            bitField0_ = (bitField0_ & ~0x00000010);
6821    
6822            return this;
6823          }
6824          /**
6825           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 5;</code>
6826           */
6827          public Builder removeTypeParameter(int index) {
6828            ensureTypeParameterIsMutable();
6829            typeParameter_.remove(index);
6830    
6831            return this;
6832          }
6833    
6834          // repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;
6835          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> supertype_ =
6836            java.util.Collections.emptyList();
6837          private void ensureSupertypeIsMutable() {
6838            if (!((bitField0_ & 0x00000020) == 0x00000020)) {
6839              supertype_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type>(supertype_);
6840              bitField0_ |= 0x00000020;
6841             }
6842          }
6843    
6844          /**
6845           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6846           */
6847          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> getSupertypeList() {
6848            return java.util.Collections.unmodifiableList(supertype_);
6849          }
6850          /**
6851           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6852           */
6853          public int getSupertypeCount() {
6854            return supertype_.size();
6855          }
6856          /**
6857           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6858           */
6859          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getSupertype(int index) {
6860            return supertype_.get(index);
6861          }
6862          /**
6863           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6864           */
6865          public Builder setSupertype(
6866              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
6867            if (value == null) {
6868              throw new NullPointerException();
6869            }
6870            ensureSupertypeIsMutable();
6871            supertype_.set(index, value);
6872    
6873            return this;
6874          }
6875          /**
6876           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6877           */
6878          public Builder setSupertype(
6879              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
6880            ensureSupertypeIsMutable();
6881            supertype_.set(index, builderForValue.build());
6882    
6883            return this;
6884          }
6885          /**
6886           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6887           */
6888          public Builder addSupertype(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
6889            if (value == null) {
6890              throw new NullPointerException();
6891            }
6892            ensureSupertypeIsMutable();
6893            supertype_.add(value);
6894    
6895            return this;
6896          }
6897          /**
6898           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6899           */
6900          public Builder addSupertype(
6901              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
6902            if (value == null) {
6903              throw new NullPointerException();
6904            }
6905            ensureSupertypeIsMutable();
6906            supertype_.add(index, value);
6907    
6908            return this;
6909          }
6910          /**
6911           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6912           */
6913          public Builder addSupertype(
6914              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
6915            ensureSupertypeIsMutable();
6916            supertype_.add(builderForValue.build());
6917    
6918            return this;
6919          }
6920          /**
6921           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6922           */
6923          public Builder addSupertype(
6924              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
6925            ensureSupertypeIsMutable();
6926            supertype_.add(index, builderForValue.build());
6927    
6928            return this;
6929          }
6930          /**
6931           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6932           */
6933          public Builder addAllSupertype(
6934              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type> values) {
6935            ensureSupertypeIsMutable();
6936            super.addAll(values, supertype_);
6937    
6938            return this;
6939          }
6940          /**
6941           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6942           */
6943          public Builder clearSupertype() {
6944            supertype_ = java.util.Collections.emptyList();
6945            bitField0_ = (bitField0_ & ~0x00000020);
6946    
6947            return this;
6948          }
6949          /**
6950           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Type supertype = 6;</code>
6951           */
6952          public Builder removeSupertype(int index) {
6953            ensureSupertypeIsMutable();
6954            supertype_.remove(index);
6955    
6956            return this;
6957          }
6958    
6959          // repeated int32 nested_class_name = 7;
6960          private java.util.List<java.lang.Integer> nestedClassName_ = java.util.Collections.emptyList();
6961          private void ensureNestedClassNameIsMutable() {
6962            if (!((bitField0_ & 0x00000040) == 0x00000040)) {
6963              nestedClassName_ = new java.util.ArrayList<java.lang.Integer>(nestedClassName_);
6964              bitField0_ |= 0x00000040;
6965             }
6966          }
6967          /**
6968           * <code>repeated int32 nested_class_name = 7;</code>
6969           *
6970           * <pre>
6971           * we store only names, because the actual information must reside in the corresponding .class files,
6972           * to be obtainable through reflection at runtime
6973           * </pre>
6974           */
6975          public java.util.List<java.lang.Integer>
6976              getNestedClassNameList() {
6977            return java.util.Collections.unmodifiableList(nestedClassName_);
6978          }
6979          /**
6980           * <code>repeated int32 nested_class_name = 7;</code>
6981           *
6982           * <pre>
6983           * we store only names, because the actual information must reside in the corresponding .class files,
6984           * to be obtainable through reflection at runtime
6985           * </pre>
6986           */
6987          public int getNestedClassNameCount() {
6988            return nestedClassName_.size();
6989          }
6990          /**
6991           * <code>repeated int32 nested_class_name = 7;</code>
6992           *
6993           * <pre>
6994           * we store only names, because the actual information must reside in the corresponding .class files,
6995           * to be obtainable through reflection at runtime
6996           * </pre>
6997           */
6998          public int getNestedClassName(int index) {
6999            return nestedClassName_.get(index);
7000          }
7001          /**
7002           * <code>repeated int32 nested_class_name = 7;</code>
7003           *
7004           * <pre>
7005           * we store only names, because the actual information must reside in the corresponding .class files,
7006           * to be obtainable through reflection at runtime
7007           * </pre>
7008           */
7009          public Builder setNestedClassName(
7010              int index, int value) {
7011            ensureNestedClassNameIsMutable();
7012            nestedClassName_.set(index, value);
7013            
7014            return this;
7015          }
7016          /**
7017           * <code>repeated int32 nested_class_name = 7;</code>
7018           *
7019           * <pre>
7020           * we store only names, because the actual information must reside in the corresponding .class files,
7021           * to be obtainable through reflection at runtime
7022           * </pre>
7023           */
7024          public Builder addNestedClassName(int value) {
7025            ensureNestedClassNameIsMutable();
7026            nestedClassName_.add(value);
7027            
7028            return this;
7029          }
7030          /**
7031           * <code>repeated int32 nested_class_name = 7;</code>
7032           *
7033           * <pre>
7034           * we store only names, because the actual information must reside in the corresponding .class files,
7035           * to be obtainable through reflection at runtime
7036           * </pre>
7037           */
7038          public Builder addAllNestedClassName(
7039              java.lang.Iterable<? extends java.lang.Integer> values) {
7040            ensureNestedClassNameIsMutable();
7041            super.addAll(values, nestedClassName_);
7042            
7043            return this;
7044          }
7045          /**
7046           * <code>repeated int32 nested_class_name = 7;</code>
7047           *
7048           * <pre>
7049           * we store only names, because the actual information must reside in the corresponding .class files,
7050           * to be obtainable through reflection at runtime
7051           * </pre>
7052           */
7053          public Builder clearNestedClassName() {
7054            nestedClassName_ = java.util.Collections.emptyList();
7055            bitField0_ = (bitField0_ & ~0x00000040);
7056            
7057            return this;
7058          }
7059    
7060          // repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;
7061          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> member_ =
7062            java.util.Collections.emptyList();
7063          private void ensureMemberIsMutable() {
7064            if (!((bitField0_ & 0x00000080) == 0x00000080)) {
7065              member_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable>(member_);
7066              bitField0_ |= 0x00000080;
7067             }
7068          }
7069    
7070          /**
7071           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7072           */
7073          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> getMemberList() {
7074            return java.util.Collections.unmodifiableList(member_);
7075          }
7076          /**
7077           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7078           */
7079          public int getMemberCount() {
7080            return member_.size();
7081          }
7082          /**
7083           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7084           */
7085          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getMember(int index) {
7086            return member_.get(index);
7087          }
7088          /**
7089           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7090           */
7091          public Builder setMember(
7092              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable value) {
7093            if (value == null) {
7094              throw new NullPointerException();
7095            }
7096            ensureMemberIsMutable();
7097            member_.set(index, value);
7098    
7099            return this;
7100          }
7101          /**
7102           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7103           */
7104          public Builder setMember(
7105              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.Builder builderForValue) {
7106            ensureMemberIsMutable();
7107            member_.set(index, builderForValue.build());
7108    
7109            return this;
7110          }
7111          /**
7112           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7113           */
7114          public Builder addMember(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable value) {
7115            if (value == null) {
7116              throw new NullPointerException();
7117            }
7118            ensureMemberIsMutable();
7119            member_.add(value);
7120    
7121            return this;
7122          }
7123          /**
7124           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7125           */
7126          public Builder addMember(
7127              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable value) {
7128            if (value == null) {
7129              throw new NullPointerException();
7130            }
7131            ensureMemberIsMutable();
7132            member_.add(index, value);
7133    
7134            return this;
7135          }
7136          /**
7137           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7138           */
7139          public Builder addMember(
7140              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.Builder builderForValue) {
7141            ensureMemberIsMutable();
7142            member_.add(builderForValue.build());
7143    
7144            return this;
7145          }
7146          /**
7147           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7148           */
7149          public Builder addMember(
7150              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.Builder builderForValue) {
7151            ensureMemberIsMutable();
7152            member_.add(index, builderForValue.build());
7153    
7154            return this;
7155          }
7156          /**
7157           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7158           */
7159          public Builder addAllMember(
7160              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> values) {
7161            ensureMemberIsMutable();
7162            super.addAll(values, member_);
7163    
7164            return this;
7165          }
7166          /**
7167           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7168           */
7169          public Builder clearMember() {
7170            member_ = java.util.Collections.emptyList();
7171            bitField0_ = (bitField0_ & ~0x00000080);
7172    
7173            return this;
7174          }
7175          /**
7176           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 11;</code>
7177           */
7178          public Builder removeMember(int index) {
7179            ensureMemberIsMutable();
7180            member_.remove(index);
7181    
7182            return this;
7183          }
7184    
7185          // repeated int32 enum_entry = 12;
7186          private java.util.List<java.lang.Integer> enumEntry_ = java.util.Collections.emptyList();
7187          private void ensureEnumEntryIsMutable() {
7188            if (!((bitField0_ & 0x00000100) == 0x00000100)) {
7189              enumEntry_ = new java.util.ArrayList<java.lang.Integer>(enumEntry_);
7190              bitField0_ |= 0x00000100;
7191             }
7192          }
7193          /**
7194           * <code>repeated int32 enum_entry = 12;</code>
7195           */
7196          public java.util.List<java.lang.Integer>
7197              getEnumEntryList() {
7198            return java.util.Collections.unmodifiableList(enumEntry_);
7199          }
7200          /**
7201           * <code>repeated int32 enum_entry = 12;</code>
7202           */
7203          public int getEnumEntryCount() {
7204            return enumEntry_.size();
7205          }
7206          /**
7207           * <code>repeated int32 enum_entry = 12;</code>
7208           */
7209          public int getEnumEntry(int index) {
7210            return enumEntry_.get(index);
7211          }
7212          /**
7213           * <code>repeated int32 enum_entry = 12;</code>
7214           */
7215          public Builder setEnumEntry(
7216              int index, int value) {
7217            ensureEnumEntryIsMutable();
7218            enumEntry_.set(index, value);
7219            
7220            return this;
7221          }
7222          /**
7223           * <code>repeated int32 enum_entry = 12;</code>
7224           */
7225          public Builder addEnumEntry(int value) {
7226            ensureEnumEntryIsMutable();
7227            enumEntry_.add(value);
7228            
7229            return this;
7230          }
7231          /**
7232           * <code>repeated int32 enum_entry = 12;</code>
7233           */
7234          public Builder addAllEnumEntry(
7235              java.lang.Iterable<? extends java.lang.Integer> values) {
7236            ensureEnumEntryIsMutable();
7237            super.addAll(values, enumEntry_);
7238            
7239            return this;
7240          }
7241          /**
7242           * <code>repeated int32 enum_entry = 12;</code>
7243           */
7244          public Builder clearEnumEntry() {
7245            enumEntry_ = java.util.Collections.emptyList();
7246            bitField0_ = (bitField0_ & ~0x00000100);
7247            
7248            return this;
7249          }
7250    
7251          // optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;
7252          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor primaryConstructor_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.getDefaultInstance();
7253          /**
7254           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
7255           *
7256           * <pre>
7257           * This field is present if and only if the class has a primary constructor
7258           * </pre>
7259           */
7260          public boolean hasPrimaryConstructor() {
7261            return ((bitField0_ & 0x00000200) == 0x00000200);
7262          }
7263          /**
7264           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
7265           *
7266           * <pre>
7267           * This field is present if and only if the class has a primary constructor
7268           * </pre>
7269           */
7270          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor getPrimaryConstructor() {
7271            return primaryConstructor_;
7272          }
7273          /**
7274           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
7275           *
7276           * <pre>
7277           * This field is present if and only if the class has a primary constructor
7278           * </pre>
7279           */
7280          public Builder setPrimaryConstructor(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor value) {
7281            if (value == null) {
7282              throw new NullPointerException();
7283            }
7284            primaryConstructor_ = value;
7285    
7286            bitField0_ |= 0x00000200;
7287            return this;
7288          }
7289          /**
7290           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
7291           *
7292           * <pre>
7293           * This field is present if and only if the class has a primary constructor
7294           * </pre>
7295           */
7296          public Builder setPrimaryConstructor(
7297              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.Builder builderForValue) {
7298            primaryConstructor_ = builderForValue.build();
7299    
7300            bitField0_ |= 0x00000200;
7301            return this;
7302          }
7303          /**
7304           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
7305           *
7306           * <pre>
7307           * This field is present if and only if the class has a primary constructor
7308           * </pre>
7309           */
7310          public Builder mergePrimaryConstructor(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor value) {
7311            if (((bitField0_ & 0x00000200) == 0x00000200) &&
7312                primaryConstructor_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.getDefaultInstance()) {
7313              primaryConstructor_ =
7314                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.newBuilder(primaryConstructor_).mergeFrom(value).buildPartial();
7315            } else {
7316              primaryConstructor_ = value;
7317            }
7318    
7319            bitField0_ |= 0x00000200;
7320            return this;
7321          }
7322          /**
7323           * <code>optional .org.jetbrains.jet.descriptors.serialization.Class.PrimaryConstructor primary_constructor = 13;</code>
7324           *
7325           * <pre>
7326           * This field is present if and only if the class has a primary constructor
7327           * </pre>
7328           */
7329          public Builder clearPrimaryConstructor() {
7330            primaryConstructor_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Class.PrimaryConstructor.getDefaultInstance();
7331    
7332            bitField0_ = (bitField0_ & ~0x00000200);
7333            return this;
7334          }
7335    
7336          // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Class)
7337        }
7338    
7339        static {
7340          defaultInstance = new Class(true);
7341          defaultInstance.initFields();
7342        }
7343    
7344        // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Class)
7345      }
7346    
7347      public interface PackageOrBuilder
7348          extends com.google.protobuf.MessageLiteOrBuilder {
7349    
7350        // repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;
7351        /**
7352         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7353         */
7354        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> 
7355            getMemberList();
7356        /**
7357         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7358         */
7359        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getMember(int index);
7360        /**
7361         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7362         */
7363        int getMemberCount();
7364      }
7365      /**
7366       * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Package}
7367       */
7368      public static final class Package extends
7369          com.google.protobuf.GeneratedMessageLite
7370          implements PackageOrBuilder {
7371        // Use Package.newBuilder() to construct.
7372        private Package(com.google.protobuf.GeneratedMessageLite.Builder builder) {
7373          super(builder);
7374    
7375        }
7376        private Package(boolean noInit) {}
7377    
7378        private static final Package defaultInstance;
7379        public static Package getDefaultInstance() {
7380          return defaultInstance;
7381        }
7382    
7383        public Package getDefaultInstanceForType() {
7384          return defaultInstance;
7385        }
7386    
7387        private Package(
7388            com.google.protobuf.CodedInputStream input,
7389            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7390            throws com.google.protobuf.InvalidProtocolBufferException {
7391          initFields();
7392          int mutable_bitField0_ = 0;
7393          try {
7394            boolean done = false;
7395            while (!done) {
7396              int tag = input.readTag();
7397              switch (tag) {
7398                case 0:
7399                  done = true;
7400                  break;
7401                default: {
7402                  if (!parseUnknownField(input,
7403                                         extensionRegistry, tag)) {
7404                    done = true;
7405                  }
7406                  break;
7407                }
7408                case 10: {
7409                  if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
7410                    member_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable>();
7411                    mutable_bitField0_ |= 0x00000001;
7412                  }
7413                  member_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.PARSER, extensionRegistry));
7414                  break;
7415                }
7416              }
7417            }
7418          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
7419            throw e.setUnfinishedMessage(this);
7420          } catch (java.io.IOException e) {
7421            throw new com.google.protobuf.InvalidProtocolBufferException(
7422                e.getMessage()).setUnfinishedMessage(this);
7423          } finally {
7424            if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
7425              member_ = java.util.Collections.unmodifiableList(member_);
7426            }
7427            makeExtensionsImmutable();
7428          }
7429        }
7430        public static com.google.protobuf.Parser<Package> PARSER =
7431            new com.google.protobuf.AbstractParser<Package>() {
7432          public Package parsePartialFrom(
7433              com.google.protobuf.CodedInputStream input,
7434              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7435              throws com.google.protobuf.InvalidProtocolBufferException {
7436            return new Package(input, extensionRegistry);
7437          }
7438        };
7439    
7440        @java.lang.Override
7441        public com.google.protobuf.Parser<Package> getParserForType() {
7442          return PARSER;
7443        }
7444    
7445        // repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;
7446        public static final int MEMBER_FIELD_NUMBER = 1;
7447        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> member_;
7448        /**
7449         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7450         */
7451        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> getMemberList() {
7452          return member_;
7453        }
7454        /**
7455         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7456         */
7457        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.CallableOrBuilder> 
7458            getMemberOrBuilderList() {
7459          return member_;
7460        }
7461        /**
7462         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7463         */
7464        public int getMemberCount() {
7465          return member_.size();
7466        }
7467        /**
7468         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7469         */
7470        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getMember(int index) {
7471          return member_.get(index);
7472        }
7473        /**
7474         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7475         */
7476        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.CallableOrBuilder getMemberOrBuilder(
7477            int index) {
7478          return member_.get(index);
7479        }
7480    
7481        private void initFields() {
7482          member_ = java.util.Collections.emptyList();
7483        }
7484        private byte memoizedIsInitialized = -1;
7485        public final boolean isInitialized() {
7486          byte isInitialized = memoizedIsInitialized;
7487          if (isInitialized != -1) return isInitialized == 1;
7488    
7489          for (int i = 0; i < getMemberCount(); i++) {
7490            if (!getMember(i).isInitialized()) {
7491              memoizedIsInitialized = 0;
7492              return false;
7493            }
7494          }
7495          memoizedIsInitialized = 1;
7496          return true;
7497        }
7498    
7499        public void writeTo(com.google.protobuf.CodedOutputStream output)
7500                            throws java.io.IOException {
7501          getSerializedSize();
7502          for (int i = 0; i < member_.size(); i++) {
7503            output.writeMessage(1, member_.get(i));
7504          }
7505        }
7506    
7507        private int memoizedSerializedSize = -1;
7508        public int getSerializedSize() {
7509          int size = memoizedSerializedSize;
7510          if (size != -1) return size;
7511    
7512          size = 0;
7513          for (int i = 0; i < member_.size(); i++) {
7514            size += com.google.protobuf.CodedOutputStream
7515              .computeMessageSize(1, member_.get(i));
7516          }
7517          memoizedSerializedSize = size;
7518          return size;
7519        }
7520    
7521        private static final long serialVersionUID = 0L;
7522        @java.lang.Override
7523        protected java.lang.Object writeReplace()
7524            throws java.io.ObjectStreamException {
7525          return super.writeReplace();
7526        }
7527    
7528        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseFrom(
7529            com.google.protobuf.ByteString data)
7530            throws com.google.protobuf.InvalidProtocolBufferException {
7531          return PARSER.parseFrom(data);
7532        }
7533        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseFrom(
7534            com.google.protobuf.ByteString data,
7535            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7536            throws com.google.protobuf.InvalidProtocolBufferException {
7537          return PARSER.parseFrom(data, extensionRegistry);
7538        }
7539        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseFrom(byte[] data)
7540            throws com.google.protobuf.InvalidProtocolBufferException {
7541          return PARSER.parseFrom(data);
7542        }
7543        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseFrom(
7544            byte[] data,
7545            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7546            throws com.google.protobuf.InvalidProtocolBufferException {
7547          return PARSER.parseFrom(data, extensionRegistry);
7548        }
7549        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseFrom(java.io.InputStream input)
7550            throws java.io.IOException {
7551          return PARSER.parseFrom(input);
7552        }
7553        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseFrom(
7554            java.io.InputStream input,
7555            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7556            throws java.io.IOException {
7557          return PARSER.parseFrom(input, extensionRegistry);
7558        }
7559        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseDelimitedFrom(java.io.InputStream input)
7560            throws java.io.IOException {
7561          return PARSER.parseDelimitedFrom(input);
7562        }
7563        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseDelimitedFrom(
7564            java.io.InputStream input,
7565            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7566            throws java.io.IOException {
7567          return PARSER.parseDelimitedFrom(input, extensionRegistry);
7568        }
7569        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseFrom(
7570            com.google.protobuf.CodedInputStream input)
7571            throws java.io.IOException {
7572          return PARSER.parseFrom(input);
7573        }
7574        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parseFrom(
7575            com.google.protobuf.CodedInputStream input,
7576            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7577            throws java.io.IOException {
7578          return PARSER.parseFrom(input, extensionRegistry);
7579        }
7580    
7581        public static Builder newBuilder() { return Builder.create(); }
7582        public Builder newBuilderForType() { return newBuilder(); }
7583        public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package prototype) {
7584          return newBuilder().mergeFrom(prototype);
7585        }
7586        public Builder toBuilder() { return newBuilder(this); }
7587    
7588        /**
7589         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Package}
7590         */
7591        public static final class Builder extends
7592            com.google.protobuf.GeneratedMessageLite.Builder<
7593              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package, Builder>
7594            implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.PackageOrBuilder {
7595          // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package.newBuilder()
7596          private Builder() {
7597            maybeForceBuilderInitialization();
7598          }
7599    
7600          private void maybeForceBuilderInitialization() {
7601          }
7602          private static Builder create() {
7603            return new Builder();
7604          }
7605    
7606          public Builder clear() {
7607            super.clear();
7608            member_ = java.util.Collections.emptyList();
7609            bitField0_ = (bitField0_ & ~0x00000001);
7610            return this;
7611          }
7612    
7613          public Builder clone() {
7614            return create().mergeFrom(buildPartial());
7615          }
7616    
7617          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package getDefaultInstanceForType() {
7618            return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package.getDefaultInstance();
7619          }
7620    
7621          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package build() {
7622            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package result = buildPartial();
7623            if (!result.isInitialized()) {
7624              throw newUninitializedMessageException(result);
7625            }
7626            return result;
7627          }
7628    
7629          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package buildPartial() {
7630            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package(this);
7631            int from_bitField0_ = bitField0_;
7632            if (((bitField0_ & 0x00000001) == 0x00000001)) {
7633              member_ = java.util.Collections.unmodifiableList(member_);
7634              bitField0_ = (bitField0_ & ~0x00000001);
7635            }
7636            result.member_ = member_;
7637            return result;
7638          }
7639    
7640          public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package other) {
7641            if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package.getDefaultInstance()) return this;
7642            if (!other.member_.isEmpty()) {
7643              if (member_.isEmpty()) {
7644                member_ = other.member_;
7645                bitField0_ = (bitField0_ & ~0x00000001);
7646              } else {
7647                ensureMemberIsMutable();
7648                member_.addAll(other.member_);
7649              }
7650              
7651            }
7652            return this;
7653          }
7654    
7655          public final boolean isInitialized() {
7656            for (int i = 0; i < getMemberCount(); i++) {
7657              if (!getMember(i).isInitialized()) {
7658                
7659                return false;
7660              }
7661            }
7662            return true;
7663          }
7664    
7665          public Builder mergeFrom(
7666              com.google.protobuf.CodedInputStream input,
7667              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
7668              throws java.io.IOException {
7669            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package parsedMessage = null;
7670            try {
7671              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
7672            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
7673              parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Package) e.getUnfinishedMessage();
7674              throw e;
7675            } finally {
7676              if (parsedMessage != null) {
7677                mergeFrom(parsedMessage);
7678              }
7679            }
7680            return this;
7681          }
7682          private int bitField0_;
7683    
7684          // repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;
7685          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> member_ =
7686            java.util.Collections.emptyList();
7687          private void ensureMemberIsMutable() {
7688            if (!((bitField0_ & 0x00000001) == 0x00000001)) {
7689              member_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable>(member_);
7690              bitField0_ |= 0x00000001;
7691             }
7692          }
7693    
7694          /**
7695           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7696           */
7697          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> getMemberList() {
7698            return java.util.Collections.unmodifiableList(member_);
7699          }
7700          /**
7701           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7702           */
7703          public int getMemberCount() {
7704            return member_.size();
7705          }
7706          /**
7707           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7708           */
7709          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getMember(int index) {
7710            return member_.get(index);
7711          }
7712          /**
7713           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7714           */
7715          public Builder setMember(
7716              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable value) {
7717            if (value == null) {
7718              throw new NullPointerException();
7719            }
7720            ensureMemberIsMutable();
7721            member_.set(index, value);
7722    
7723            return this;
7724          }
7725          /**
7726           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7727           */
7728          public Builder setMember(
7729              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.Builder builderForValue) {
7730            ensureMemberIsMutable();
7731            member_.set(index, builderForValue.build());
7732    
7733            return this;
7734          }
7735          /**
7736           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7737           */
7738          public Builder addMember(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable value) {
7739            if (value == null) {
7740              throw new NullPointerException();
7741            }
7742            ensureMemberIsMutable();
7743            member_.add(value);
7744    
7745            return this;
7746          }
7747          /**
7748           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7749           */
7750          public Builder addMember(
7751              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable value) {
7752            if (value == null) {
7753              throw new NullPointerException();
7754            }
7755            ensureMemberIsMutable();
7756            member_.add(index, value);
7757    
7758            return this;
7759          }
7760          /**
7761           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7762           */
7763          public Builder addMember(
7764              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.Builder builderForValue) {
7765            ensureMemberIsMutable();
7766            member_.add(builderForValue.build());
7767    
7768            return this;
7769          }
7770          /**
7771           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7772           */
7773          public Builder addMember(
7774              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.Builder builderForValue) {
7775            ensureMemberIsMutable();
7776            member_.add(index, builderForValue.build());
7777    
7778            return this;
7779          }
7780          /**
7781           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7782           */
7783          public Builder addAllMember(
7784              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable> values) {
7785            ensureMemberIsMutable();
7786            super.addAll(values, member_);
7787    
7788            return this;
7789          }
7790          /**
7791           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7792           */
7793          public Builder clearMember() {
7794            member_ = java.util.Collections.emptyList();
7795            bitField0_ = (bitField0_ & ~0x00000001);
7796    
7797            return this;
7798          }
7799          /**
7800           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable member = 1;</code>
7801           */
7802          public Builder removeMember(int index) {
7803            ensureMemberIsMutable();
7804            member_.remove(index);
7805    
7806            return this;
7807          }
7808    
7809          // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Package)
7810        }
7811    
7812        static {
7813          defaultInstance = new Package(true);
7814          defaultInstance.initFields();
7815        }
7816    
7817        // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Package)
7818      }
7819    
7820      public interface CallableOrBuilder extends 
7821           com.google.protobuf.GeneratedMessageLite.
7822                ExtendableMessageOrBuilder<Callable> {
7823    
7824        // optional int32 flags = 1;
7825        /**
7826         * <code>optional int32 flags = 1;</code>
7827         *
7828         * <pre>
7829         *
7830         *Visibility
7831         *Modality
7832         *has_annotations
7833         *CallableKind
7834         *MemberKind
7835         *hasGetter
7836         *hasSetter
7837         *hasConstant
7838         * </pre>
7839         */
7840        boolean hasFlags();
7841        /**
7842         * <code>optional int32 flags = 1;</code>
7843         *
7844         * <pre>
7845         *
7846         *Visibility
7847         *Modality
7848         *has_annotations
7849         *CallableKind
7850         *MemberKind
7851         *hasGetter
7852         *hasSetter
7853         *hasConstant
7854         * </pre>
7855         */
7856        int getFlags();
7857    
7858        // optional string extra_visibility = 2;
7859        /**
7860         * <code>optional string extra_visibility = 2;</code>
7861         *
7862         * <pre>
7863         * for things like java-specific visibilities
7864         * </pre>
7865         */
7866        boolean hasExtraVisibility();
7867        /**
7868         * <code>optional string extra_visibility = 2;</code>
7869         *
7870         * <pre>
7871         * for things like java-specific visibilities
7872         * </pre>
7873         */
7874        java.lang.String getExtraVisibility();
7875        /**
7876         * <code>optional string extra_visibility = 2;</code>
7877         *
7878         * <pre>
7879         * for things like java-specific visibilities
7880         * </pre>
7881         */
7882        com.google.protobuf.ByteString
7883            getExtraVisibilityBytes();
7884    
7885        // optional int32 getter_flags = 9;
7886        /**
7887         * <code>optional int32 getter_flags = 9;</code>
7888         *
7889         * <pre>
7890         *
7891         *isNotDefault
7892         *Visibility
7893         *Modality
7894         *has_annotations
7895         * </pre>
7896         */
7897        boolean hasGetterFlags();
7898        /**
7899         * <code>optional int32 getter_flags = 9;</code>
7900         *
7901         * <pre>
7902         *
7903         *isNotDefault
7904         *Visibility
7905         *Modality
7906         *has_annotations
7907         * </pre>
7908         */
7909        int getGetterFlags();
7910    
7911        // optional int32 setter_flags = 10;
7912        /**
7913         * <code>optional int32 setter_flags = 10;</code>
7914         */
7915        boolean hasSetterFlags();
7916        /**
7917         * <code>optional int32 setter_flags = 10;</code>
7918         */
7919        int getSetterFlags();
7920    
7921        // repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;
7922        /**
7923         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
7924         */
7925        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> 
7926            getTypeParameterList();
7927        /**
7928         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
7929         */
7930        org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter getTypeParameter(int index);
7931        /**
7932         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
7933         */
7934        int getTypeParameterCount();
7935    
7936        // optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;
7937        /**
7938         * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
7939         */
7940        boolean hasReceiverType();
7941        /**
7942         * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
7943         */
7944        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getReceiverType();
7945    
7946        // required int32 name = 6;
7947        /**
7948         * <code>required int32 name = 6;</code>
7949         */
7950        boolean hasName();
7951        /**
7952         * <code>required int32 name = 6;</code>
7953         */
7954        int getName();
7955    
7956        // repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;
7957        /**
7958         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
7959         *
7960         * <pre>
7961         * Value parameters for functions and constructors, or setter value parameter for properties
7962         * </pre>
7963         */
7964        java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter> 
7965            getValueParameterList();
7966        /**
7967         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
7968         *
7969         * <pre>
7970         * Value parameters for functions and constructors, or setter value parameter for properties
7971         * </pre>
7972         */
7973        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter getValueParameter(int index);
7974        /**
7975         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
7976         *
7977         * <pre>
7978         * Value parameters for functions and constructors, or setter value parameter for properties
7979         * </pre>
7980         */
7981        int getValueParameterCount();
7982    
7983        // required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;
7984        /**
7985         * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
7986         */
7987        boolean hasReturnType();
7988        /**
7989         * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
7990         */
7991        org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getReturnType();
7992      }
7993      /**
7994       * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Callable}
7995       */
7996      public static final class Callable extends
7997          com.google.protobuf.GeneratedMessageLite.ExtendableMessage<
7998            Callable> implements CallableOrBuilder {
7999        // Use Callable.newBuilder() to construct.
8000        private Callable(com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable, ?> builder) {
8001          super(builder);
8002    
8003        }
8004        private Callable(boolean noInit) {}
8005    
8006        private static final Callable defaultInstance;
8007        public static Callable getDefaultInstance() {
8008          return defaultInstance;
8009        }
8010    
8011        public Callable getDefaultInstanceForType() {
8012          return defaultInstance;
8013        }
8014    
8015        private Callable(
8016            com.google.protobuf.CodedInputStream input,
8017            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8018            throws com.google.protobuf.InvalidProtocolBufferException {
8019          initFields();
8020          int mutable_bitField0_ = 0;
8021          try {
8022            boolean done = false;
8023            while (!done) {
8024              int tag = input.readTag();
8025              switch (tag) {
8026                case 0:
8027                  done = true;
8028                  break;
8029                default: {
8030                  if (!parseUnknownField(input,
8031                                         extensionRegistry, tag)) {
8032                    done = true;
8033                  }
8034                  break;
8035                }
8036                case 8: {
8037                  bitField0_ |= 0x00000001;
8038                  flags_ = input.readInt32();
8039                  break;
8040                }
8041                case 18: {
8042                  bitField0_ |= 0x00000002;
8043                  extraVisibility_ = input.readBytes();
8044                  break;
8045                }
8046                case 34: {
8047                  if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
8048                    typeParameter_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter>();
8049                    mutable_bitField0_ |= 0x00000010;
8050                  }
8051                  typeParameter_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.PARSER, extensionRegistry));
8052                  break;
8053                }
8054                case 42: {
8055                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder subBuilder = null;
8056                  if (((bitField0_ & 0x00000010) == 0x00000010)) {
8057                    subBuilder = receiverType_.toBuilder();
8058                  }
8059                  receiverType_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.PARSER, extensionRegistry);
8060                  if (subBuilder != null) {
8061                    subBuilder.mergeFrom(receiverType_);
8062                    receiverType_ = subBuilder.buildPartial();
8063                  }
8064                  bitField0_ |= 0x00000010;
8065                  break;
8066                }
8067                case 48: {
8068                  bitField0_ |= 0x00000020;
8069                  name_ = input.readInt32();
8070                  break;
8071                }
8072                case 58: {
8073                  if (!((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
8074                    valueParameter_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter>();
8075                    mutable_bitField0_ |= 0x00000080;
8076                  }
8077                  valueParameter_.add(input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter.PARSER, extensionRegistry));
8078                  break;
8079                }
8080                case 66: {
8081                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder subBuilder = null;
8082                  if (((bitField0_ & 0x00000040) == 0x00000040)) {
8083                    subBuilder = returnType_.toBuilder();
8084                  }
8085                  returnType_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.PARSER, extensionRegistry);
8086                  if (subBuilder != null) {
8087                    subBuilder.mergeFrom(returnType_);
8088                    returnType_ = subBuilder.buildPartial();
8089                  }
8090                  bitField0_ |= 0x00000040;
8091                  break;
8092                }
8093                case 72: {
8094                  bitField0_ |= 0x00000004;
8095                  getterFlags_ = input.readInt32();
8096                  break;
8097                }
8098                case 80: {
8099                  bitField0_ |= 0x00000008;
8100                  setterFlags_ = input.readInt32();
8101                  break;
8102                }
8103              }
8104            }
8105          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
8106            throw e.setUnfinishedMessage(this);
8107          } catch (java.io.IOException e) {
8108            throw new com.google.protobuf.InvalidProtocolBufferException(
8109                e.getMessage()).setUnfinishedMessage(this);
8110          } finally {
8111            if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
8112              typeParameter_ = java.util.Collections.unmodifiableList(typeParameter_);
8113            }
8114            if (((mutable_bitField0_ & 0x00000080) == 0x00000080)) {
8115              valueParameter_ = java.util.Collections.unmodifiableList(valueParameter_);
8116            }
8117            makeExtensionsImmutable();
8118          }
8119        }
8120        public static com.google.protobuf.Parser<Callable> PARSER =
8121            new com.google.protobuf.AbstractParser<Callable>() {
8122          public Callable parsePartialFrom(
8123              com.google.protobuf.CodedInputStream input,
8124              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8125              throws com.google.protobuf.InvalidProtocolBufferException {
8126            return new Callable(input, extensionRegistry);
8127          }
8128        };
8129    
8130        @java.lang.Override
8131        public com.google.protobuf.Parser<Callable> getParserForType() {
8132          return PARSER;
8133        }
8134    
8135        /**
8136         * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.Callable.MemberKind}
8137         */
8138        public enum MemberKind
8139            implements com.google.protobuf.Internal.EnumLite {
8140          /**
8141           * <code>DECLARATION = 0;</code>
8142           *
8143           * <pre>
8144           * 2 bits
8145           * </pre>
8146           */
8147          DECLARATION(0, 0),
8148          /**
8149           * <code>FAKE_OVERRIDE = 1;</code>
8150           */
8151          FAKE_OVERRIDE(1, 1),
8152          /**
8153           * <code>DELEGATION = 2;</code>
8154           */
8155          DELEGATION(2, 2),
8156          /**
8157           * <code>SYNTHESIZED = 3;</code>
8158           */
8159          SYNTHESIZED(3, 3),
8160          ;
8161    
8162          /**
8163           * <code>DECLARATION = 0;</code>
8164           *
8165           * <pre>
8166           * 2 bits
8167           * </pre>
8168           */
8169          public static final int DECLARATION_VALUE = 0;
8170          /**
8171           * <code>FAKE_OVERRIDE = 1;</code>
8172           */
8173          public static final int FAKE_OVERRIDE_VALUE = 1;
8174          /**
8175           * <code>DELEGATION = 2;</code>
8176           */
8177          public static final int DELEGATION_VALUE = 2;
8178          /**
8179           * <code>SYNTHESIZED = 3;</code>
8180           */
8181          public static final int SYNTHESIZED_VALUE = 3;
8182    
8183    
8184          public final int getNumber() { return value; }
8185    
8186          public static MemberKind valueOf(int value) {
8187            switch (value) {
8188              case 0: return DECLARATION;
8189              case 1: return FAKE_OVERRIDE;
8190              case 2: return DELEGATION;
8191              case 3: return SYNTHESIZED;
8192              default: return null;
8193            }
8194          }
8195    
8196          public static com.google.protobuf.Internal.EnumLiteMap<MemberKind>
8197              internalGetValueMap() {
8198            return internalValueMap;
8199          }
8200          private static com.google.protobuf.Internal.EnumLiteMap<MemberKind>
8201              internalValueMap =
8202                new com.google.protobuf.Internal.EnumLiteMap<MemberKind>() {
8203                  public MemberKind findValueByNumber(int number) {
8204                    return MemberKind.valueOf(number);
8205                  }
8206                };
8207    
8208          private final int value;
8209    
8210          private MemberKind(int index, int value) {
8211            this.value = value;
8212          }
8213    
8214          // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.Callable.MemberKind)
8215        }
8216    
8217        /**
8218         * Protobuf enum {@code org.jetbrains.jet.descriptors.serialization.Callable.CallableKind}
8219         */
8220        public enum CallableKind
8221            implements com.google.protobuf.Internal.EnumLite {
8222          /**
8223           * <code>FUN = 0;</code>
8224           *
8225           * <pre>
8226           * 2 bits
8227           * </pre>
8228           */
8229          FUN(0, 0),
8230          /**
8231           * <code>VAL = 1;</code>
8232           */
8233          VAL(1, 1),
8234          /**
8235           * <code>VAR = 2;</code>
8236           */
8237          VAR(2, 2),
8238          /**
8239           * <code>CONSTRUCTOR = 3;</code>
8240           */
8241          CONSTRUCTOR(3, 3),
8242          ;
8243    
8244          /**
8245           * <code>FUN = 0;</code>
8246           *
8247           * <pre>
8248           * 2 bits
8249           * </pre>
8250           */
8251          public static final int FUN_VALUE = 0;
8252          /**
8253           * <code>VAL = 1;</code>
8254           */
8255          public static final int VAL_VALUE = 1;
8256          /**
8257           * <code>VAR = 2;</code>
8258           */
8259          public static final int VAR_VALUE = 2;
8260          /**
8261           * <code>CONSTRUCTOR = 3;</code>
8262           */
8263          public static final int CONSTRUCTOR_VALUE = 3;
8264    
8265    
8266          public final int getNumber() { return value; }
8267    
8268          public static CallableKind valueOf(int value) {
8269            switch (value) {
8270              case 0: return FUN;
8271              case 1: return VAL;
8272              case 2: return VAR;
8273              case 3: return CONSTRUCTOR;
8274              default: return null;
8275            }
8276          }
8277    
8278          public static com.google.protobuf.Internal.EnumLiteMap<CallableKind>
8279              internalGetValueMap() {
8280            return internalValueMap;
8281          }
8282          private static com.google.protobuf.Internal.EnumLiteMap<CallableKind>
8283              internalValueMap =
8284                new com.google.protobuf.Internal.EnumLiteMap<CallableKind>() {
8285                  public CallableKind findValueByNumber(int number) {
8286                    return CallableKind.valueOf(number);
8287                  }
8288                };
8289    
8290          private final int value;
8291    
8292          private CallableKind(int index, int value) {
8293            this.value = value;
8294          }
8295    
8296          // @@protoc_insertion_point(enum_scope:org.jetbrains.jet.descriptors.serialization.Callable.CallableKind)
8297        }
8298    
8299        public interface ValueParameterOrBuilder extends 
8300             com.google.protobuf.GeneratedMessageLite.
8301                  ExtendableMessageOrBuilder<ValueParameter> {
8302    
8303          // optional int32 flags = 1;
8304          /**
8305           * <code>optional int32 flags = 1;</code>
8306           *
8307           * <pre>
8308           *
8309           *declaresDefault
8310           *has_annotations
8311           * </pre>
8312           */
8313          boolean hasFlags();
8314          /**
8315           * <code>optional int32 flags = 1;</code>
8316           *
8317           * <pre>
8318           *
8319           *declaresDefault
8320           *has_annotations
8321           * </pre>
8322           */
8323          int getFlags();
8324    
8325          // required int32 name = 2;
8326          /**
8327           * <code>required int32 name = 2;</code>
8328           */
8329          boolean hasName();
8330          /**
8331           * <code>required int32 name = 2;</code>
8332           */
8333          int getName();
8334    
8335          // required .org.jetbrains.jet.descriptors.serialization.Type type = 3;
8336          /**
8337           * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8338           */
8339          boolean hasType();
8340          /**
8341           * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8342           */
8343          org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getType();
8344    
8345          // optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;
8346          /**
8347           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
8348           */
8349          boolean hasVarargElementType();
8350          /**
8351           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
8352           */
8353          org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getVarargElementType();
8354        }
8355        /**
8356         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter}
8357         */
8358        public static final class ValueParameter extends
8359            com.google.protobuf.GeneratedMessageLite.ExtendableMessage<
8360              ValueParameter> implements ValueParameterOrBuilder {
8361          // Use ValueParameter.newBuilder() to construct.
8362          private ValueParameter(com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter, ?> builder) {
8363            super(builder);
8364    
8365          }
8366          private ValueParameter(boolean noInit) {}
8367    
8368          private static final ValueParameter defaultInstance;
8369          public static ValueParameter getDefaultInstance() {
8370            return defaultInstance;
8371          }
8372    
8373          public ValueParameter getDefaultInstanceForType() {
8374            return defaultInstance;
8375          }
8376    
8377          private ValueParameter(
8378              com.google.protobuf.CodedInputStream input,
8379              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8380              throws com.google.protobuf.InvalidProtocolBufferException {
8381            initFields();
8382            int mutable_bitField0_ = 0;
8383            try {
8384              boolean done = false;
8385              while (!done) {
8386                int tag = input.readTag();
8387                switch (tag) {
8388                  case 0:
8389                    done = true;
8390                    break;
8391                  default: {
8392                    if (!parseUnknownField(input,
8393                                           extensionRegistry, tag)) {
8394                      done = true;
8395                    }
8396                    break;
8397                  }
8398                  case 8: {
8399                    bitField0_ |= 0x00000001;
8400                    flags_ = input.readInt32();
8401                    break;
8402                  }
8403                  case 16: {
8404                    bitField0_ |= 0x00000002;
8405                    name_ = input.readInt32();
8406                    break;
8407                  }
8408                  case 26: {
8409                    org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder subBuilder = null;
8410                    if (((bitField0_ & 0x00000004) == 0x00000004)) {
8411                      subBuilder = type_.toBuilder();
8412                    }
8413                    type_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.PARSER, extensionRegistry);
8414                    if (subBuilder != null) {
8415                      subBuilder.mergeFrom(type_);
8416                      type_ = subBuilder.buildPartial();
8417                    }
8418                    bitField0_ |= 0x00000004;
8419                    break;
8420                  }
8421                  case 34: {
8422                    org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder subBuilder = null;
8423                    if (((bitField0_ & 0x00000008) == 0x00000008)) {
8424                      subBuilder = varargElementType_.toBuilder();
8425                    }
8426                    varargElementType_ = input.readMessage(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.PARSER, extensionRegistry);
8427                    if (subBuilder != null) {
8428                      subBuilder.mergeFrom(varargElementType_);
8429                      varargElementType_ = subBuilder.buildPartial();
8430                    }
8431                    bitField0_ |= 0x00000008;
8432                    break;
8433                  }
8434                }
8435              }
8436            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
8437              throw e.setUnfinishedMessage(this);
8438            } catch (java.io.IOException e) {
8439              throw new com.google.protobuf.InvalidProtocolBufferException(
8440                  e.getMessage()).setUnfinishedMessage(this);
8441            } finally {
8442              makeExtensionsImmutable();
8443            }
8444          }
8445          public static com.google.protobuf.Parser<ValueParameter> PARSER =
8446              new com.google.protobuf.AbstractParser<ValueParameter>() {
8447            public ValueParameter parsePartialFrom(
8448                com.google.protobuf.CodedInputStream input,
8449                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8450                throws com.google.protobuf.InvalidProtocolBufferException {
8451              return new ValueParameter(input, extensionRegistry);
8452            }
8453          };
8454    
8455          @java.lang.Override
8456          public com.google.protobuf.Parser<ValueParameter> getParserForType() {
8457            return PARSER;
8458          }
8459    
8460          private int bitField0_;
8461          // optional int32 flags = 1;
8462          public static final int FLAGS_FIELD_NUMBER = 1;
8463          private int flags_;
8464          /**
8465           * <code>optional int32 flags = 1;</code>
8466           *
8467           * <pre>
8468           *
8469           *declaresDefault
8470           *has_annotations
8471           * </pre>
8472           */
8473          public boolean hasFlags() {
8474            return ((bitField0_ & 0x00000001) == 0x00000001);
8475          }
8476          /**
8477           * <code>optional int32 flags = 1;</code>
8478           *
8479           * <pre>
8480           *
8481           *declaresDefault
8482           *has_annotations
8483           * </pre>
8484           */
8485          public int getFlags() {
8486            return flags_;
8487          }
8488    
8489          // required int32 name = 2;
8490          public static final int NAME_FIELD_NUMBER = 2;
8491          private int name_;
8492          /**
8493           * <code>required int32 name = 2;</code>
8494           */
8495          public boolean hasName() {
8496            return ((bitField0_ & 0x00000002) == 0x00000002);
8497          }
8498          /**
8499           * <code>required int32 name = 2;</code>
8500           */
8501          public int getName() {
8502            return name_;
8503          }
8504    
8505          // required .org.jetbrains.jet.descriptors.serialization.Type type = 3;
8506          public static final int TYPE_FIELD_NUMBER = 3;
8507          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type type_;
8508          /**
8509           * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8510           */
8511          public boolean hasType() {
8512            return ((bitField0_ & 0x00000004) == 0x00000004);
8513          }
8514          /**
8515           * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8516           */
8517          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getType() {
8518            return type_;
8519          }
8520    
8521          // optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;
8522          public static final int VARARG_ELEMENT_TYPE_FIELD_NUMBER = 4;
8523          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type varargElementType_;
8524          /**
8525           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
8526           */
8527          public boolean hasVarargElementType() {
8528            return ((bitField0_ & 0x00000008) == 0x00000008);
8529          }
8530          /**
8531           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
8532           */
8533          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getVarargElementType() {
8534            return varargElementType_;
8535          }
8536    
8537          private void initFields() {
8538            flags_ = 0;
8539            name_ = 0;
8540            type_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
8541            varargElementType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
8542          }
8543          private byte memoizedIsInitialized = -1;
8544          public final boolean isInitialized() {
8545            byte isInitialized = memoizedIsInitialized;
8546            if (isInitialized != -1) return isInitialized == 1;
8547    
8548            if (!hasName()) {
8549              memoizedIsInitialized = 0;
8550              return false;
8551            }
8552            if (!hasType()) {
8553              memoizedIsInitialized = 0;
8554              return false;
8555            }
8556            if (!getType().isInitialized()) {
8557              memoizedIsInitialized = 0;
8558              return false;
8559            }
8560            if (hasVarargElementType()) {
8561              if (!getVarargElementType().isInitialized()) {
8562                memoizedIsInitialized = 0;
8563                return false;
8564              }
8565            }
8566            if (!extensionsAreInitialized()) {
8567              memoizedIsInitialized = 0;
8568              return false;
8569            }
8570            memoizedIsInitialized = 1;
8571            return true;
8572          }
8573    
8574          public void writeTo(com.google.protobuf.CodedOutputStream output)
8575                              throws java.io.IOException {
8576            getSerializedSize();
8577            com.google.protobuf.GeneratedMessageLite
8578              .ExtendableMessage<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter>.ExtensionWriter extensionWriter =
8579                newExtensionWriter();
8580            if (((bitField0_ & 0x00000001) == 0x00000001)) {
8581              output.writeInt32(1, flags_);
8582            }
8583            if (((bitField0_ & 0x00000002) == 0x00000002)) {
8584              output.writeInt32(2, name_);
8585            }
8586            if (((bitField0_ & 0x00000004) == 0x00000004)) {
8587              output.writeMessage(3, type_);
8588            }
8589            if (((bitField0_ & 0x00000008) == 0x00000008)) {
8590              output.writeMessage(4, varargElementType_);
8591            }
8592            extensionWriter.writeUntil(200, output);
8593          }
8594    
8595          private int memoizedSerializedSize = -1;
8596          public int getSerializedSize() {
8597            int size = memoizedSerializedSize;
8598            if (size != -1) return size;
8599    
8600            size = 0;
8601            if (((bitField0_ & 0x00000001) == 0x00000001)) {
8602              size += com.google.protobuf.CodedOutputStream
8603                .computeInt32Size(1, flags_);
8604            }
8605            if (((bitField0_ & 0x00000002) == 0x00000002)) {
8606              size += com.google.protobuf.CodedOutputStream
8607                .computeInt32Size(2, name_);
8608            }
8609            if (((bitField0_ & 0x00000004) == 0x00000004)) {
8610              size += com.google.protobuf.CodedOutputStream
8611                .computeMessageSize(3, type_);
8612            }
8613            if (((bitField0_ & 0x00000008) == 0x00000008)) {
8614              size += com.google.protobuf.CodedOutputStream
8615                .computeMessageSize(4, varargElementType_);
8616            }
8617            size += extensionsSerializedSize();
8618            memoizedSerializedSize = size;
8619            return size;
8620          }
8621    
8622          private static final long serialVersionUID = 0L;
8623          @java.lang.Override
8624          protected java.lang.Object writeReplace()
8625              throws java.io.ObjectStreamException {
8626            return super.writeReplace();
8627          }
8628    
8629          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseFrom(
8630              com.google.protobuf.ByteString data)
8631              throws com.google.protobuf.InvalidProtocolBufferException {
8632            return PARSER.parseFrom(data);
8633          }
8634          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseFrom(
8635              com.google.protobuf.ByteString data,
8636              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8637              throws com.google.protobuf.InvalidProtocolBufferException {
8638            return PARSER.parseFrom(data, extensionRegistry);
8639          }
8640          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseFrom(byte[] data)
8641              throws com.google.protobuf.InvalidProtocolBufferException {
8642            return PARSER.parseFrom(data);
8643          }
8644          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseFrom(
8645              byte[] data,
8646              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8647              throws com.google.protobuf.InvalidProtocolBufferException {
8648            return PARSER.parseFrom(data, extensionRegistry);
8649          }
8650          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseFrom(java.io.InputStream input)
8651              throws java.io.IOException {
8652            return PARSER.parseFrom(input);
8653          }
8654          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseFrom(
8655              java.io.InputStream input,
8656              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8657              throws java.io.IOException {
8658            return PARSER.parseFrom(input, extensionRegistry);
8659          }
8660          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseDelimitedFrom(java.io.InputStream input)
8661              throws java.io.IOException {
8662            return PARSER.parseDelimitedFrom(input);
8663          }
8664          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseDelimitedFrom(
8665              java.io.InputStream input,
8666              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8667              throws java.io.IOException {
8668            return PARSER.parseDelimitedFrom(input, extensionRegistry);
8669          }
8670          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseFrom(
8671              com.google.protobuf.CodedInputStream input)
8672              throws java.io.IOException {
8673            return PARSER.parseFrom(input);
8674          }
8675          public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parseFrom(
8676              com.google.protobuf.CodedInputStream input,
8677              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8678              throws java.io.IOException {
8679            return PARSER.parseFrom(input, extensionRegistry);
8680          }
8681    
8682          public static Builder newBuilder() { return Builder.create(); }
8683          public Builder newBuilderForType() { return newBuilder(); }
8684          public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter prototype) {
8685            return newBuilder().mergeFrom(prototype);
8686          }
8687          public Builder toBuilder() { return newBuilder(this); }
8688    
8689          /**
8690           * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter}
8691           */
8692          public static final class Builder extends
8693              com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<
8694                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter, Builder> implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameterOrBuilder {
8695            // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter.newBuilder()
8696            private Builder() {
8697              maybeForceBuilderInitialization();
8698            }
8699    
8700            private void maybeForceBuilderInitialization() {
8701            }
8702            private static Builder create() {
8703              return new Builder();
8704            }
8705    
8706            public Builder clear() {
8707              super.clear();
8708              flags_ = 0;
8709              bitField0_ = (bitField0_ & ~0x00000001);
8710              name_ = 0;
8711              bitField0_ = (bitField0_ & ~0x00000002);
8712              type_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
8713              bitField0_ = (bitField0_ & ~0x00000004);
8714              varargElementType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
8715              bitField0_ = (bitField0_ & ~0x00000008);
8716              return this;
8717            }
8718    
8719            public Builder clone() {
8720              return create().mergeFrom(buildPartial());
8721            }
8722    
8723            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter getDefaultInstanceForType() {
8724              return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter.getDefaultInstance();
8725            }
8726    
8727            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter build() {
8728              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter result = buildPartial();
8729              if (!result.isInitialized()) {
8730                throw newUninitializedMessageException(result);
8731              }
8732              return result;
8733            }
8734    
8735            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter buildPartial() {
8736              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter(this);
8737              int from_bitField0_ = bitField0_;
8738              int to_bitField0_ = 0;
8739              if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
8740                to_bitField0_ |= 0x00000001;
8741              }
8742              result.flags_ = flags_;
8743              if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
8744                to_bitField0_ |= 0x00000002;
8745              }
8746              result.name_ = name_;
8747              if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
8748                to_bitField0_ |= 0x00000004;
8749              }
8750              result.type_ = type_;
8751              if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
8752                to_bitField0_ |= 0x00000008;
8753              }
8754              result.varargElementType_ = varargElementType_;
8755              result.bitField0_ = to_bitField0_;
8756              return result;
8757            }
8758    
8759            public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter other) {
8760              if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter.getDefaultInstance()) return this;
8761              if (other.hasFlags()) {
8762                setFlags(other.getFlags());
8763              }
8764              if (other.hasName()) {
8765                setName(other.getName());
8766              }
8767              if (other.hasType()) {
8768                mergeType(other.getType());
8769              }
8770              if (other.hasVarargElementType()) {
8771                mergeVarargElementType(other.getVarargElementType());
8772              }
8773              this.mergeExtensionFields(other);
8774              return this;
8775            }
8776    
8777            public final boolean isInitialized() {
8778              if (!hasName()) {
8779                
8780                return false;
8781              }
8782              if (!hasType()) {
8783                
8784                return false;
8785              }
8786              if (!getType().isInitialized()) {
8787                
8788                return false;
8789              }
8790              if (hasVarargElementType()) {
8791                if (!getVarargElementType().isInitialized()) {
8792                  
8793                  return false;
8794                }
8795              }
8796              if (!extensionsAreInitialized()) {
8797                
8798                return false;
8799              }
8800              return true;
8801            }
8802    
8803            public Builder mergeFrom(
8804                com.google.protobuf.CodedInputStream input,
8805                com.google.protobuf.ExtensionRegistryLite extensionRegistry)
8806                throws java.io.IOException {
8807              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter parsedMessage = null;
8808              try {
8809                parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
8810              } catch (com.google.protobuf.InvalidProtocolBufferException e) {
8811                parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter) e.getUnfinishedMessage();
8812                throw e;
8813              } finally {
8814                if (parsedMessage != null) {
8815                  mergeFrom(parsedMessage);
8816                }
8817              }
8818              return this;
8819            }
8820            private int bitField0_;
8821    
8822            // optional int32 flags = 1;
8823            private int flags_ ;
8824            /**
8825             * <code>optional int32 flags = 1;</code>
8826             *
8827             * <pre>
8828             *
8829             *declaresDefault
8830             *has_annotations
8831             * </pre>
8832             */
8833            public boolean hasFlags() {
8834              return ((bitField0_ & 0x00000001) == 0x00000001);
8835            }
8836            /**
8837             * <code>optional int32 flags = 1;</code>
8838             *
8839             * <pre>
8840             *
8841             *declaresDefault
8842             *has_annotations
8843             * </pre>
8844             */
8845            public int getFlags() {
8846              return flags_;
8847            }
8848            /**
8849             * <code>optional int32 flags = 1;</code>
8850             *
8851             * <pre>
8852             *
8853             *declaresDefault
8854             *has_annotations
8855             * </pre>
8856             */
8857            public Builder setFlags(int value) {
8858              bitField0_ |= 0x00000001;
8859              flags_ = value;
8860              
8861              return this;
8862            }
8863            /**
8864             * <code>optional int32 flags = 1;</code>
8865             *
8866             * <pre>
8867             *
8868             *declaresDefault
8869             *has_annotations
8870             * </pre>
8871             */
8872            public Builder clearFlags() {
8873              bitField0_ = (bitField0_ & ~0x00000001);
8874              flags_ = 0;
8875              
8876              return this;
8877            }
8878    
8879            // required int32 name = 2;
8880            private int name_ ;
8881            /**
8882             * <code>required int32 name = 2;</code>
8883             */
8884            public boolean hasName() {
8885              return ((bitField0_ & 0x00000002) == 0x00000002);
8886            }
8887            /**
8888             * <code>required int32 name = 2;</code>
8889             */
8890            public int getName() {
8891              return name_;
8892            }
8893            /**
8894             * <code>required int32 name = 2;</code>
8895             */
8896            public Builder setName(int value) {
8897              bitField0_ |= 0x00000002;
8898              name_ = value;
8899              
8900              return this;
8901            }
8902            /**
8903             * <code>required int32 name = 2;</code>
8904             */
8905            public Builder clearName() {
8906              bitField0_ = (bitField0_ & ~0x00000002);
8907              name_ = 0;
8908              
8909              return this;
8910            }
8911    
8912            // required .org.jetbrains.jet.descriptors.serialization.Type type = 3;
8913            private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type type_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
8914            /**
8915             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8916             */
8917            public boolean hasType() {
8918              return ((bitField0_ & 0x00000004) == 0x00000004);
8919            }
8920            /**
8921             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8922             */
8923            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getType() {
8924              return type_;
8925            }
8926            /**
8927             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8928             */
8929            public Builder setType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
8930              if (value == null) {
8931                throw new NullPointerException();
8932              }
8933              type_ = value;
8934    
8935              bitField0_ |= 0x00000004;
8936              return this;
8937            }
8938            /**
8939             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8940             */
8941            public Builder setType(
8942                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
8943              type_ = builderForValue.build();
8944    
8945              bitField0_ |= 0x00000004;
8946              return this;
8947            }
8948            /**
8949             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8950             */
8951            public Builder mergeType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
8952              if (((bitField0_ & 0x00000004) == 0x00000004) &&
8953                  type_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance()) {
8954                type_ =
8955                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.newBuilder(type_).mergeFrom(value).buildPartial();
8956              } else {
8957                type_ = value;
8958              }
8959    
8960              bitField0_ |= 0x00000004;
8961              return this;
8962            }
8963            /**
8964             * <code>required .org.jetbrains.jet.descriptors.serialization.Type type = 3;</code>
8965             */
8966            public Builder clearType() {
8967              type_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
8968    
8969              bitField0_ = (bitField0_ & ~0x00000004);
8970              return this;
8971            }
8972    
8973            // optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;
8974            private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type varargElementType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
8975            /**
8976             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
8977             */
8978            public boolean hasVarargElementType() {
8979              return ((bitField0_ & 0x00000008) == 0x00000008);
8980            }
8981            /**
8982             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
8983             */
8984            public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getVarargElementType() {
8985              return varargElementType_;
8986            }
8987            /**
8988             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
8989             */
8990            public Builder setVarargElementType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
8991              if (value == null) {
8992                throw new NullPointerException();
8993              }
8994              varargElementType_ = value;
8995    
8996              bitField0_ |= 0x00000008;
8997              return this;
8998            }
8999            /**
9000             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
9001             */
9002            public Builder setVarargElementType(
9003                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
9004              varargElementType_ = builderForValue.build();
9005    
9006              bitField0_ |= 0x00000008;
9007              return this;
9008            }
9009            /**
9010             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
9011             */
9012            public Builder mergeVarargElementType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
9013              if (((bitField0_ & 0x00000008) == 0x00000008) &&
9014                  varargElementType_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance()) {
9015                varargElementType_ =
9016                  org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.newBuilder(varargElementType_).mergeFrom(value).buildPartial();
9017              } else {
9018                varargElementType_ = value;
9019              }
9020    
9021              bitField0_ |= 0x00000008;
9022              return this;
9023            }
9024            /**
9025             * <code>optional .org.jetbrains.jet.descriptors.serialization.Type vararg_element_type = 4;</code>
9026             */
9027            public Builder clearVarargElementType() {
9028              varargElementType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
9029    
9030              bitField0_ = (bitField0_ & ~0x00000008);
9031              return this;
9032            }
9033    
9034            // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter)
9035          }
9036    
9037          static {
9038            defaultInstance = new ValueParameter(true);
9039            defaultInstance.initFields();
9040          }
9041    
9042          // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter)
9043        }
9044    
9045        private int bitField0_;
9046        // optional int32 flags = 1;
9047        public static final int FLAGS_FIELD_NUMBER = 1;
9048        private int flags_;
9049        /**
9050         * <code>optional int32 flags = 1;</code>
9051         *
9052         * <pre>
9053         *
9054         *Visibility
9055         *Modality
9056         *has_annotations
9057         *CallableKind
9058         *MemberKind
9059         *hasGetter
9060         *hasSetter
9061         *hasConstant
9062         * </pre>
9063         */
9064        public boolean hasFlags() {
9065          return ((bitField0_ & 0x00000001) == 0x00000001);
9066        }
9067        /**
9068         * <code>optional int32 flags = 1;</code>
9069         *
9070         * <pre>
9071         *
9072         *Visibility
9073         *Modality
9074         *has_annotations
9075         *CallableKind
9076         *MemberKind
9077         *hasGetter
9078         *hasSetter
9079         *hasConstant
9080         * </pre>
9081         */
9082        public int getFlags() {
9083          return flags_;
9084        }
9085    
9086        // optional string extra_visibility = 2;
9087        public static final int EXTRA_VISIBILITY_FIELD_NUMBER = 2;
9088        private java.lang.Object extraVisibility_;
9089        /**
9090         * <code>optional string extra_visibility = 2;</code>
9091         *
9092         * <pre>
9093         * for things like java-specific visibilities
9094         * </pre>
9095         */
9096        public boolean hasExtraVisibility() {
9097          return ((bitField0_ & 0x00000002) == 0x00000002);
9098        }
9099        /**
9100         * <code>optional string extra_visibility = 2;</code>
9101         *
9102         * <pre>
9103         * for things like java-specific visibilities
9104         * </pre>
9105         */
9106        public java.lang.String getExtraVisibility() {
9107          java.lang.Object ref = extraVisibility_;
9108          if (ref instanceof java.lang.String) {
9109            return (java.lang.String) ref;
9110          } else {
9111            com.google.protobuf.ByteString bs = 
9112                (com.google.protobuf.ByteString) ref;
9113            java.lang.String s = bs.toStringUtf8();
9114            if (bs.isValidUtf8()) {
9115              extraVisibility_ = s;
9116            }
9117            return s;
9118          }
9119        }
9120        /**
9121         * <code>optional string extra_visibility = 2;</code>
9122         *
9123         * <pre>
9124         * for things like java-specific visibilities
9125         * </pre>
9126         */
9127        public com.google.protobuf.ByteString
9128            getExtraVisibilityBytes() {
9129          java.lang.Object ref = extraVisibility_;
9130          if (ref instanceof java.lang.String) {
9131            com.google.protobuf.ByteString b = 
9132                com.google.protobuf.ByteString.copyFromUtf8(
9133                    (java.lang.String) ref);
9134            extraVisibility_ = b;
9135            return b;
9136          } else {
9137            return (com.google.protobuf.ByteString) ref;
9138          }
9139        }
9140    
9141        // optional int32 getter_flags = 9;
9142        public static final int GETTER_FLAGS_FIELD_NUMBER = 9;
9143        private int getterFlags_;
9144        /**
9145         * <code>optional int32 getter_flags = 9;</code>
9146         *
9147         * <pre>
9148         *
9149         *isNotDefault
9150         *Visibility
9151         *Modality
9152         *has_annotations
9153         * </pre>
9154         */
9155        public boolean hasGetterFlags() {
9156          return ((bitField0_ & 0x00000004) == 0x00000004);
9157        }
9158        /**
9159         * <code>optional int32 getter_flags = 9;</code>
9160         *
9161         * <pre>
9162         *
9163         *isNotDefault
9164         *Visibility
9165         *Modality
9166         *has_annotations
9167         * </pre>
9168         */
9169        public int getGetterFlags() {
9170          return getterFlags_;
9171        }
9172    
9173        // optional int32 setter_flags = 10;
9174        public static final int SETTER_FLAGS_FIELD_NUMBER = 10;
9175        private int setterFlags_;
9176        /**
9177         * <code>optional int32 setter_flags = 10;</code>
9178         */
9179        public boolean hasSetterFlags() {
9180          return ((bitField0_ & 0x00000008) == 0x00000008);
9181        }
9182        /**
9183         * <code>optional int32 setter_flags = 10;</code>
9184         */
9185        public int getSetterFlags() {
9186          return setterFlags_;
9187        }
9188    
9189        // repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;
9190        public static final int TYPE_PARAMETER_FIELD_NUMBER = 4;
9191        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> typeParameter_;
9192        /**
9193         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
9194         */
9195        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> getTypeParameterList() {
9196          return typeParameter_;
9197        }
9198        /**
9199         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
9200         */
9201        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameterOrBuilder> 
9202            getTypeParameterOrBuilderList() {
9203          return typeParameter_;
9204        }
9205        /**
9206         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
9207         */
9208        public int getTypeParameterCount() {
9209          return typeParameter_.size();
9210        }
9211        /**
9212         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
9213         */
9214        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter getTypeParameter(int index) {
9215          return typeParameter_.get(index);
9216        }
9217        /**
9218         * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
9219         */
9220        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameterOrBuilder getTypeParameterOrBuilder(
9221            int index) {
9222          return typeParameter_.get(index);
9223        }
9224    
9225        // optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;
9226        public static final int RECEIVER_TYPE_FIELD_NUMBER = 5;
9227        private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type receiverType_;
9228        /**
9229         * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
9230         */
9231        public boolean hasReceiverType() {
9232          return ((bitField0_ & 0x00000010) == 0x00000010);
9233        }
9234        /**
9235         * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
9236         */
9237        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getReceiverType() {
9238          return receiverType_;
9239        }
9240    
9241        // required int32 name = 6;
9242        public static final int NAME_FIELD_NUMBER = 6;
9243        private int name_;
9244        /**
9245         * <code>required int32 name = 6;</code>
9246         */
9247        public boolean hasName() {
9248          return ((bitField0_ & 0x00000020) == 0x00000020);
9249        }
9250        /**
9251         * <code>required int32 name = 6;</code>
9252         */
9253        public int getName() {
9254          return name_;
9255        }
9256    
9257        // repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;
9258        public static final int VALUE_PARAMETER_FIELD_NUMBER = 7;
9259        private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter> valueParameter_;
9260        /**
9261         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
9262         *
9263         * <pre>
9264         * Value parameters for functions and constructors, or setter value parameter for properties
9265         * </pre>
9266         */
9267        public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter> getValueParameterList() {
9268          return valueParameter_;
9269        }
9270        /**
9271         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
9272         *
9273         * <pre>
9274         * Value parameters for functions and constructors, or setter value parameter for properties
9275         * </pre>
9276         */
9277        public java.util.List<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameterOrBuilder> 
9278            getValueParameterOrBuilderList() {
9279          return valueParameter_;
9280        }
9281        /**
9282         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
9283         *
9284         * <pre>
9285         * Value parameters for functions and constructors, or setter value parameter for properties
9286         * </pre>
9287         */
9288        public int getValueParameterCount() {
9289          return valueParameter_.size();
9290        }
9291        /**
9292         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
9293         *
9294         * <pre>
9295         * Value parameters for functions and constructors, or setter value parameter for properties
9296         * </pre>
9297         */
9298        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter getValueParameter(int index) {
9299          return valueParameter_.get(index);
9300        }
9301        /**
9302         * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
9303         *
9304         * <pre>
9305         * Value parameters for functions and constructors, or setter value parameter for properties
9306         * </pre>
9307         */
9308        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameterOrBuilder getValueParameterOrBuilder(
9309            int index) {
9310          return valueParameter_.get(index);
9311        }
9312    
9313        // required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;
9314        public static final int RETURN_TYPE_FIELD_NUMBER = 8;
9315        private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type returnType_;
9316        /**
9317         * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
9318         */
9319        public boolean hasReturnType() {
9320          return ((bitField0_ & 0x00000040) == 0x00000040);
9321        }
9322        /**
9323         * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
9324         */
9325        public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getReturnType() {
9326          return returnType_;
9327        }
9328    
9329        private void initFields() {
9330          flags_ = 0;
9331          extraVisibility_ = "";
9332          getterFlags_ = 0;
9333          setterFlags_ = 0;
9334          typeParameter_ = java.util.Collections.emptyList();
9335          receiverType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
9336          name_ = 0;
9337          valueParameter_ = java.util.Collections.emptyList();
9338          returnType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
9339        }
9340        private byte memoizedIsInitialized = -1;
9341        public final boolean isInitialized() {
9342          byte isInitialized = memoizedIsInitialized;
9343          if (isInitialized != -1) return isInitialized == 1;
9344    
9345          if (!hasName()) {
9346            memoizedIsInitialized = 0;
9347            return false;
9348          }
9349          if (!hasReturnType()) {
9350            memoizedIsInitialized = 0;
9351            return false;
9352          }
9353          for (int i = 0; i < getTypeParameterCount(); i++) {
9354            if (!getTypeParameter(i).isInitialized()) {
9355              memoizedIsInitialized = 0;
9356              return false;
9357            }
9358          }
9359          if (hasReceiverType()) {
9360            if (!getReceiverType().isInitialized()) {
9361              memoizedIsInitialized = 0;
9362              return false;
9363            }
9364          }
9365          for (int i = 0; i < getValueParameterCount(); i++) {
9366            if (!getValueParameter(i).isInitialized()) {
9367              memoizedIsInitialized = 0;
9368              return false;
9369            }
9370          }
9371          if (!getReturnType().isInitialized()) {
9372            memoizedIsInitialized = 0;
9373            return false;
9374          }
9375          if (!extensionsAreInitialized()) {
9376            memoizedIsInitialized = 0;
9377            return false;
9378          }
9379          memoizedIsInitialized = 1;
9380          return true;
9381        }
9382    
9383        public void writeTo(com.google.protobuf.CodedOutputStream output)
9384                            throws java.io.IOException {
9385          getSerializedSize();
9386          com.google.protobuf.GeneratedMessageLite
9387            .ExtendableMessage<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable>.ExtensionWriter extensionWriter =
9388              newExtensionWriter();
9389          if (((bitField0_ & 0x00000001) == 0x00000001)) {
9390            output.writeInt32(1, flags_);
9391          }
9392          if (((bitField0_ & 0x00000002) == 0x00000002)) {
9393            output.writeBytes(2, getExtraVisibilityBytes());
9394          }
9395          for (int i = 0; i < typeParameter_.size(); i++) {
9396            output.writeMessage(4, typeParameter_.get(i));
9397          }
9398          if (((bitField0_ & 0x00000010) == 0x00000010)) {
9399            output.writeMessage(5, receiverType_);
9400          }
9401          if (((bitField0_ & 0x00000020) == 0x00000020)) {
9402            output.writeInt32(6, name_);
9403          }
9404          for (int i = 0; i < valueParameter_.size(); i++) {
9405            output.writeMessage(7, valueParameter_.get(i));
9406          }
9407          if (((bitField0_ & 0x00000040) == 0x00000040)) {
9408            output.writeMessage(8, returnType_);
9409          }
9410          if (((bitField0_ & 0x00000004) == 0x00000004)) {
9411            output.writeInt32(9, getterFlags_);
9412          }
9413          if (((bitField0_ & 0x00000008) == 0x00000008)) {
9414            output.writeInt32(10, setterFlags_);
9415          }
9416          extensionWriter.writeUntil(200, output);
9417        }
9418    
9419        private int memoizedSerializedSize = -1;
9420        public int getSerializedSize() {
9421          int size = memoizedSerializedSize;
9422          if (size != -1) return size;
9423    
9424          size = 0;
9425          if (((bitField0_ & 0x00000001) == 0x00000001)) {
9426            size += com.google.protobuf.CodedOutputStream
9427              .computeInt32Size(1, flags_);
9428          }
9429          if (((bitField0_ & 0x00000002) == 0x00000002)) {
9430            size += com.google.protobuf.CodedOutputStream
9431              .computeBytesSize(2, getExtraVisibilityBytes());
9432          }
9433          for (int i = 0; i < typeParameter_.size(); i++) {
9434            size += com.google.protobuf.CodedOutputStream
9435              .computeMessageSize(4, typeParameter_.get(i));
9436          }
9437          if (((bitField0_ & 0x00000010) == 0x00000010)) {
9438            size += com.google.protobuf.CodedOutputStream
9439              .computeMessageSize(5, receiverType_);
9440          }
9441          if (((bitField0_ & 0x00000020) == 0x00000020)) {
9442            size += com.google.protobuf.CodedOutputStream
9443              .computeInt32Size(6, name_);
9444          }
9445          for (int i = 0; i < valueParameter_.size(); i++) {
9446            size += com.google.protobuf.CodedOutputStream
9447              .computeMessageSize(7, valueParameter_.get(i));
9448          }
9449          if (((bitField0_ & 0x00000040) == 0x00000040)) {
9450            size += com.google.protobuf.CodedOutputStream
9451              .computeMessageSize(8, returnType_);
9452          }
9453          if (((bitField0_ & 0x00000004) == 0x00000004)) {
9454            size += com.google.protobuf.CodedOutputStream
9455              .computeInt32Size(9, getterFlags_);
9456          }
9457          if (((bitField0_ & 0x00000008) == 0x00000008)) {
9458            size += com.google.protobuf.CodedOutputStream
9459              .computeInt32Size(10, setterFlags_);
9460          }
9461          size += extensionsSerializedSize();
9462          memoizedSerializedSize = size;
9463          return size;
9464        }
9465    
9466        private static final long serialVersionUID = 0L;
9467        @java.lang.Override
9468        protected java.lang.Object writeReplace()
9469            throws java.io.ObjectStreamException {
9470          return super.writeReplace();
9471        }
9472    
9473        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseFrom(
9474            com.google.protobuf.ByteString data)
9475            throws com.google.protobuf.InvalidProtocolBufferException {
9476          return PARSER.parseFrom(data);
9477        }
9478        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseFrom(
9479            com.google.protobuf.ByteString data,
9480            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
9481            throws com.google.protobuf.InvalidProtocolBufferException {
9482          return PARSER.parseFrom(data, extensionRegistry);
9483        }
9484        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseFrom(byte[] data)
9485            throws com.google.protobuf.InvalidProtocolBufferException {
9486          return PARSER.parseFrom(data);
9487        }
9488        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseFrom(
9489            byte[] data,
9490            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
9491            throws com.google.protobuf.InvalidProtocolBufferException {
9492          return PARSER.parseFrom(data, extensionRegistry);
9493        }
9494        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseFrom(java.io.InputStream input)
9495            throws java.io.IOException {
9496          return PARSER.parseFrom(input);
9497        }
9498        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseFrom(
9499            java.io.InputStream input,
9500            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
9501            throws java.io.IOException {
9502          return PARSER.parseFrom(input, extensionRegistry);
9503        }
9504        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseDelimitedFrom(java.io.InputStream input)
9505            throws java.io.IOException {
9506          return PARSER.parseDelimitedFrom(input);
9507        }
9508        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseDelimitedFrom(
9509            java.io.InputStream input,
9510            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
9511            throws java.io.IOException {
9512          return PARSER.parseDelimitedFrom(input, extensionRegistry);
9513        }
9514        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseFrom(
9515            com.google.protobuf.CodedInputStream input)
9516            throws java.io.IOException {
9517          return PARSER.parseFrom(input);
9518        }
9519        public static org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parseFrom(
9520            com.google.protobuf.CodedInputStream input,
9521            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
9522            throws java.io.IOException {
9523          return PARSER.parseFrom(input, extensionRegistry);
9524        }
9525    
9526        public static Builder newBuilder() { return Builder.create(); }
9527        public Builder newBuilderForType() { return newBuilder(); }
9528        public static Builder newBuilder(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable prototype) {
9529          return newBuilder().mergeFrom(prototype);
9530        }
9531        public Builder toBuilder() { return newBuilder(this); }
9532    
9533        /**
9534         * Protobuf type {@code org.jetbrains.jet.descriptors.serialization.Callable}
9535         */
9536        public static final class Builder extends
9537            com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<
9538              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable, Builder> implements org.jetbrains.jet.descriptors.serialization.ProtoBuf.CallableOrBuilder {
9539          // Construct using org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.newBuilder()
9540          private Builder() {
9541            maybeForceBuilderInitialization();
9542          }
9543    
9544          private void maybeForceBuilderInitialization() {
9545          }
9546          private static Builder create() {
9547            return new Builder();
9548          }
9549    
9550          public Builder clear() {
9551            super.clear();
9552            flags_ = 0;
9553            bitField0_ = (bitField0_ & ~0x00000001);
9554            extraVisibility_ = "";
9555            bitField0_ = (bitField0_ & ~0x00000002);
9556            getterFlags_ = 0;
9557            bitField0_ = (bitField0_ & ~0x00000004);
9558            setterFlags_ = 0;
9559            bitField0_ = (bitField0_ & ~0x00000008);
9560            typeParameter_ = java.util.Collections.emptyList();
9561            bitField0_ = (bitField0_ & ~0x00000010);
9562            receiverType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
9563            bitField0_ = (bitField0_ & ~0x00000020);
9564            name_ = 0;
9565            bitField0_ = (bitField0_ & ~0x00000040);
9566            valueParameter_ = java.util.Collections.emptyList();
9567            bitField0_ = (bitField0_ & ~0x00000080);
9568            returnType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
9569            bitField0_ = (bitField0_ & ~0x00000100);
9570            return this;
9571          }
9572    
9573          public Builder clone() {
9574            return create().mergeFrom(buildPartial());
9575          }
9576    
9577          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable getDefaultInstanceForType() {
9578            return org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.getDefaultInstance();
9579          }
9580    
9581          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable build() {
9582            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable result = buildPartial();
9583            if (!result.isInitialized()) {
9584              throw newUninitializedMessageException(result);
9585            }
9586            return result;
9587          }
9588    
9589          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable buildPartial() {
9590            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable result = new org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable(this);
9591            int from_bitField0_ = bitField0_;
9592            int to_bitField0_ = 0;
9593            if (((from_bitField0_ & 0x00000001) == 0x00000001)) {
9594              to_bitField0_ |= 0x00000001;
9595            }
9596            result.flags_ = flags_;
9597            if (((from_bitField0_ & 0x00000002) == 0x00000002)) {
9598              to_bitField0_ |= 0x00000002;
9599            }
9600            result.extraVisibility_ = extraVisibility_;
9601            if (((from_bitField0_ & 0x00000004) == 0x00000004)) {
9602              to_bitField0_ |= 0x00000004;
9603            }
9604            result.getterFlags_ = getterFlags_;
9605            if (((from_bitField0_ & 0x00000008) == 0x00000008)) {
9606              to_bitField0_ |= 0x00000008;
9607            }
9608            result.setterFlags_ = setterFlags_;
9609            if (((bitField0_ & 0x00000010) == 0x00000010)) {
9610              typeParameter_ = java.util.Collections.unmodifiableList(typeParameter_);
9611              bitField0_ = (bitField0_ & ~0x00000010);
9612            }
9613            result.typeParameter_ = typeParameter_;
9614            if (((from_bitField0_ & 0x00000020) == 0x00000020)) {
9615              to_bitField0_ |= 0x00000010;
9616            }
9617            result.receiverType_ = receiverType_;
9618            if (((from_bitField0_ & 0x00000040) == 0x00000040)) {
9619              to_bitField0_ |= 0x00000020;
9620            }
9621            result.name_ = name_;
9622            if (((bitField0_ & 0x00000080) == 0x00000080)) {
9623              valueParameter_ = java.util.Collections.unmodifiableList(valueParameter_);
9624              bitField0_ = (bitField0_ & ~0x00000080);
9625            }
9626            result.valueParameter_ = valueParameter_;
9627            if (((from_bitField0_ & 0x00000100) == 0x00000100)) {
9628              to_bitField0_ |= 0x00000040;
9629            }
9630            result.returnType_ = returnType_;
9631            result.bitField0_ = to_bitField0_;
9632            return result;
9633          }
9634    
9635          public Builder mergeFrom(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable other) {
9636            if (other == org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.getDefaultInstance()) return this;
9637            if (other.hasFlags()) {
9638              setFlags(other.getFlags());
9639            }
9640            if (other.hasExtraVisibility()) {
9641              bitField0_ |= 0x00000002;
9642              extraVisibility_ = other.extraVisibility_;
9643              
9644            }
9645            if (other.hasGetterFlags()) {
9646              setGetterFlags(other.getGetterFlags());
9647            }
9648            if (other.hasSetterFlags()) {
9649              setSetterFlags(other.getSetterFlags());
9650            }
9651            if (!other.typeParameter_.isEmpty()) {
9652              if (typeParameter_.isEmpty()) {
9653                typeParameter_ = other.typeParameter_;
9654                bitField0_ = (bitField0_ & ~0x00000010);
9655              } else {
9656                ensureTypeParameterIsMutable();
9657                typeParameter_.addAll(other.typeParameter_);
9658              }
9659              
9660            }
9661            if (other.hasReceiverType()) {
9662              mergeReceiverType(other.getReceiverType());
9663            }
9664            if (other.hasName()) {
9665              setName(other.getName());
9666            }
9667            if (!other.valueParameter_.isEmpty()) {
9668              if (valueParameter_.isEmpty()) {
9669                valueParameter_ = other.valueParameter_;
9670                bitField0_ = (bitField0_ & ~0x00000080);
9671              } else {
9672                ensureValueParameterIsMutable();
9673                valueParameter_.addAll(other.valueParameter_);
9674              }
9675              
9676            }
9677            if (other.hasReturnType()) {
9678              mergeReturnType(other.getReturnType());
9679            }
9680            this.mergeExtensionFields(other);
9681            return this;
9682          }
9683    
9684          public final boolean isInitialized() {
9685            if (!hasName()) {
9686              
9687              return false;
9688            }
9689            if (!hasReturnType()) {
9690              
9691              return false;
9692            }
9693            for (int i = 0; i < getTypeParameterCount(); i++) {
9694              if (!getTypeParameter(i).isInitialized()) {
9695                
9696                return false;
9697              }
9698            }
9699            if (hasReceiverType()) {
9700              if (!getReceiverType().isInitialized()) {
9701                
9702                return false;
9703              }
9704            }
9705            for (int i = 0; i < getValueParameterCount(); i++) {
9706              if (!getValueParameter(i).isInitialized()) {
9707                
9708                return false;
9709              }
9710            }
9711            if (!getReturnType().isInitialized()) {
9712              
9713              return false;
9714            }
9715            if (!extensionsAreInitialized()) {
9716              
9717              return false;
9718            }
9719            return true;
9720          }
9721    
9722          public Builder mergeFrom(
9723              com.google.protobuf.CodedInputStream input,
9724              com.google.protobuf.ExtensionRegistryLite extensionRegistry)
9725              throws java.io.IOException {
9726            org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable parsedMessage = null;
9727            try {
9728              parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
9729            } catch (com.google.protobuf.InvalidProtocolBufferException e) {
9730              parsedMessage = (org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable) e.getUnfinishedMessage();
9731              throw e;
9732            } finally {
9733              if (parsedMessage != null) {
9734                mergeFrom(parsedMessage);
9735              }
9736            }
9737            return this;
9738          }
9739          private int bitField0_;
9740    
9741          // optional int32 flags = 1;
9742          private int flags_ ;
9743          /**
9744           * <code>optional int32 flags = 1;</code>
9745           *
9746           * <pre>
9747           *
9748           *Visibility
9749           *Modality
9750           *has_annotations
9751           *CallableKind
9752           *MemberKind
9753           *hasGetter
9754           *hasSetter
9755           *hasConstant
9756           * </pre>
9757           */
9758          public boolean hasFlags() {
9759            return ((bitField0_ & 0x00000001) == 0x00000001);
9760          }
9761          /**
9762           * <code>optional int32 flags = 1;</code>
9763           *
9764           * <pre>
9765           *
9766           *Visibility
9767           *Modality
9768           *has_annotations
9769           *CallableKind
9770           *MemberKind
9771           *hasGetter
9772           *hasSetter
9773           *hasConstant
9774           * </pre>
9775           */
9776          public int getFlags() {
9777            return flags_;
9778          }
9779          /**
9780           * <code>optional int32 flags = 1;</code>
9781           *
9782           * <pre>
9783           *
9784           *Visibility
9785           *Modality
9786           *has_annotations
9787           *CallableKind
9788           *MemberKind
9789           *hasGetter
9790           *hasSetter
9791           *hasConstant
9792           * </pre>
9793           */
9794          public Builder setFlags(int value) {
9795            bitField0_ |= 0x00000001;
9796            flags_ = value;
9797            
9798            return this;
9799          }
9800          /**
9801           * <code>optional int32 flags = 1;</code>
9802           *
9803           * <pre>
9804           *
9805           *Visibility
9806           *Modality
9807           *has_annotations
9808           *CallableKind
9809           *MemberKind
9810           *hasGetter
9811           *hasSetter
9812           *hasConstant
9813           * </pre>
9814           */
9815          public Builder clearFlags() {
9816            bitField0_ = (bitField0_ & ~0x00000001);
9817            flags_ = 0;
9818            
9819            return this;
9820          }
9821    
9822          // optional string extra_visibility = 2;
9823          private java.lang.Object extraVisibility_ = "";
9824          /**
9825           * <code>optional string extra_visibility = 2;</code>
9826           *
9827           * <pre>
9828           * for things like java-specific visibilities
9829           * </pre>
9830           */
9831          public boolean hasExtraVisibility() {
9832            return ((bitField0_ & 0x00000002) == 0x00000002);
9833          }
9834          /**
9835           * <code>optional string extra_visibility = 2;</code>
9836           *
9837           * <pre>
9838           * for things like java-specific visibilities
9839           * </pre>
9840           */
9841          public java.lang.String getExtraVisibility() {
9842            java.lang.Object ref = extraVisibility_;
9843            if (!(ref instanceof java.lang.String)) {
9844              java.lang.String s = ((com.google.protobuf.ByteString) ref)
9845                  .toStringUtf8();
9846              extraVisibility_ = s;
9847              return s;
9848            } else {
9849              return (java.lang.String) ref;
9850            }
9851          }
9852          /**
9853           * <code>optional string extra_visibility = 2;</code>
9854           *
9855           * <pre>
9856           * for things like java-specific visibilities
9857           * </pre>
9858           */
9859          public com.google.protobuf.ByteString
9860              getExtraVisibilityBytes() {
9861            java.lang.Object ref = extraVisibility_;
9862            if (ref instanceof String) {
9863              com.google.protobuf.ByteString b = 
9864                  com.google.protobuf.ByteString.copyFromUtf8(
9865                      (java.lang.String) ref);
9866              extraVisibility_ = b;
9867              return b;
9868            } else {
9869              return (com.google.protobuf.ByteString) ref;
9870            }
9871          }
9872          /**
9873           * <code>optional string extra_visibility = 2;</code>
9874           *
9875           * <pre>
9876           * for things like java-specific visibilities
9877           * </pre>
9878           */
9879          public Builder setExtraVisibility(
9880              java.lang.String value) {
9881            if (value == null) {
9882        throw new NullPointerException();
9883      }
9884      bitField0_ |= 0x00000002;
9885            extraVisibility_ = value;
9886            
9887            return this;
9888          }
9889          /**
9890           * <code>optional string extra_visibility = 2;</code>
9891           *
9892           * <pre>
9893           * for things like java-specific visibilities
9894           * </pre>
9895           */
9896          public Builder clearExtraVisibility() {
9897            bitField0_ = (bitField0_ & ~0x00000002);
9898            extraVisibility_ = getDefaultInstance().getExtraVisibility();
9899            
9900            return this;
9901          }
9902          /**
9903           * <code>optional string extra_visibility = 2;</code>
9904           *
9905           * <pre>
9906           * for things like java-specific visibilities
9907           * </pre>
9908           */
9909          public Builder setExtraVisibilityBytes(
9910              com.google.protobuf.ByteString value) {
9911            if (value == null) {
9912        throw new NullPointerException();
9913      }
9914      bitField0_ |= 0x00000002;
9915            extraVisibility_ = value;
9916            
9917            return this;
9918          }
9919    
9920          // optional int32 getter_flags = 9;
9921          private int getterFlags_ ;
9922          /**
9923           * <code>optional int32 getter_flags = 9;</code>
9924           *
9925           * <pre>
9926           *
9927           *isNotDefault
9928           *Visibility
9929           *Modality
9930           *has_annotations
9931           * </pre>
9932           */
9933          public boolean hasGetterFlags() {
9934            return ((bitField0_ & 0x00000004) == 0x00000004);
9935          }
9936          /**
9937           * <code>optional int32 getter_flags = 9;</code>
9938           *
9939           * <pre>
9940           *
9941           *isNotDefault
9942           *Visibility
9943           *Modality
9944           *has_annotations
9945           * </pre>
9946           */
9947          public int getGetterFlags() {
9948            return getterFlags_;
9949          }
9950          /**
9951           * <code>optional int32 getter_flags = 9;</code>
9952           *
9953           * <pre>
9954           *
9955           *isNotDefault
9956           *Visibility
9957           *Modality
9958           *has_annotations
9959           * </pre>
9960           */
9961          public Builder setGetterFlags(int value) {
9962            bitField0_ |= 0x00000004;
9963            getterFlags_ = value;
9964            
9965            return this;
9966          }
9967          /**
9968           * <code>optional int32 getter_flags = 9;</code>
9969           *
9970           * <pre>
9971           *
9972           *isNotDefault
9973           *Visibility
9974           *Modality
9975           *has_annotations
9976           * </pre>
9977           */
9978          public Builder clearGetterFlags() {
9979            bitField0_ = (bitField0_ & ~0x00000004);
9980            getterFlags_ = 0;
9981            
9982            return this;
9983          }
9984    
9985          // optional int32 setter_flags = 10;
9986          private int setterFlags_ ;
9987          /**
9988           * <code>optional int32 setter_flags = 10;</code>
9989           */
9990          public boolean hasSetterFlags() {
9991            return ((bitField0_ & 0x00000008) == 0x00000008);
9992          }
9993          /**
9994           * <code>optional int32 setter_flags = 10;</code>
9995           */
9996          public int getSetterFlags() {
9997            return setterFlags_;
9998          }
9999          /**
10000           * <code>optional int32 setter_flags = 10;</code>
10001           */
10002          public Builder setSetterFlags(int value) {
10003            bitField0_ |= 0x00000008;
10004            setterFlags_ = value;
10005            
10006            return this;
10007          }
10008          /**
10009           * <code>optional int32 setter_flags = 10;</code>
10010           */
10011          public Builder clearSetterFlags() {
10012            bitField0_ = (bitField0_ & ~0x00000008);
10013            setterFlags_ = 0;
10014            
10015            return this;
10016          }
10017    
10018          // repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;
10019          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> typeParameter_ =
10020            java.util.Collections.emptyList();
10021          private void ensureTypeParameterIsMutable() {
10022            if (!((bitField0_ & 0x00000010) == 0x00000010)) {
10023              typeParameter_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter>(typeParameter_);
10024              bitField0_ |= 0x00000010;
10025             }
10026          }
10027    
10028          /**
10029           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10030           */
10031          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> getTypeParameterList() {
10032            return java.util.Collections.unmodifiableList(typeParameter_);
10033          }
10034          /**
10035           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10036           */
10037          public int getTypeParameterCount() {
10038            return typeParameter_.size();
10039          }
10040          /**
10041           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10042           */
10043          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter getTypeParameter(int index) {
10044            return typeParameter_.get(index);
10045          }
10046          /**
10047           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10048           */
10049          public Builder setTypeParameter(
10050              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter value) {
10051            if (value == null) {
10052              throw new NullPointerException();
10053            }
10054            ensureTypeParameterIsMutable();
10055            typeParameter_.set(index, value);
10056    
10057            return this;
10058          }
10059          /**
10060           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10061           */
10062          public Builder setTypeParameter(
10063              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Builder builderForValue) {
10064            ensureTypeParameterIsMutable();
10065            typeParameter_.set(index, builderForValue.build());
10066    
10067            return this;
10068          }
10069          /**
10070           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10071           */
10072          public Builder addTypeParameter(org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter value) {
10073            if (value == null) {
10074              throw new NullPointerException();
10075            }
10076            ensureTypeParameterIsMutable();
10077            typeParameter_.add(value);
10078    
10079            return this;
10080          }
10081          /**
10082           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10083           */
10084          public Builder addTypeParameter(
10085              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter value) {
10086            if (value == null) {
10087              throw new NullPointerException();
10088            }
10089            ensureTypeParameterIsMutable();
10090            typeParameter_.add(index, value);
10091    
10092            return this;
10093          }
10094          /**
10095           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10096           */
10097          public Builder addTypeParameter(
10098              org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Builder builderForValue) {
10099            ensureTypeParameterIsMutable();
10100            typeParameter_.add(builderForValue.build());
10101    
10102            return this;
10103          }
10104          /**
10105           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10106           */
10107          public Builder addTypeParameter(
10108              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter.Builder builderForValue) {
10109            ensureTypeParameterIsMutable();
10110            typeParameter_.add(index, builderForValue.build());
10111    
10112            return this;
10113          }
10114          /**
10115           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10116           */
10117          public Builder addAllTypeParameter(
10118              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.TypeParameter> values) {
10119            ensureTypeParameterIsMutable();
10120            super.addAll(values, typeParameter_);
10121    
10122            return this;
10123          }
10124          /**
10125           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10126           */
10127          public Builder clearTypeParameter() {
10128            typeParameter_ = java.util.Collections.emptyList();
10129            bitField0_ = (bitField0_ & ~0x00000010);
10130    
10131            return this;
10132          }
10133          /**
10134           * <code>repeated .org.jetbrains.jet.descriptors.serialization.TypeParameter type_parameter = 4;</code>
10135           */
10136          public Builder removeTypeParameter(int index) {
10137            ensureTypeParameterIsMutable();
10138            typeParameter_.remove(index);
10139    
10140            return this;
10141          }
10142    
10143          // optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;
10144          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type receiverType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
10145          /**
10146           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
10147           */
10148          public boolean hasReceiverType() {
10149            return ((bitField0_ & 0x00000020) == 0x00000020);
10150          }
10151          /**
10152           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
10153           */
10154          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getReceiverType() {
10155            return receiverType_;
10156          }
10157          /**
10158           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
10159           */
10160          public Builder setReceiverType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
10161            if (value == null) {
10162              throw new NullPointerException();
10163            }
10164            receiverType_ = value;
10165    
10166            bitField0_ |= 0x00000020;
10167            return this;
10168          }
10169          /**
10170           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
10171           */
10172          public Builder setReceiverType(
10173              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
10174            receiverType_ = builderForValue.build();
10175    
10176            bitField0_ |= 0x00000020;
10177            return this;
10178          }
10179          /**
10180           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
10181           */
10182          public Builder mergeReceiverType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
10183            if (((bitField0_ & 0x00000020) == 0x00000020) &&
10184                receiverType_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance()) {
10185              receiverType_ =
10186                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.newBuilder(receiverType_).mergeFrom(value).buildPartial();
10187            } else {
10188              receiverType_ = value;
10189            }
10190    
10191            bitField0_ |= 0x00000020;
10192            return this;
10193          }
10194          /**
10195           * <code>optional .org.jetbrains.jet.descriptors.serialization.Type receiver_type = 5;</code>
10196           */
10197          public Builder clearReceiverType() {
10198            receiverType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
10199    
10200            bitField0_ = (bitField0_ & ~0x00000020);
10201            return this;
10202          }
10203    
10204          // required int32 name = 6;
10205          private int name_ ;
10206          /**
10207           * <code>required int32 name = 6;</code>
10208           */
10209          public boolean hasName() {
10210            return ((bitField0_ & 0x00000040) == 0x00000040);
10211          }
10212          /**
10213           * <code>required int32 name = 6;</code>
10214           */
10215          public int getName() {
10216            return name_;
10217          }
10218          /**
10219           * <code>required int32 name = 6;</code>
10220           */
10221          public Builder setName(int value) {
10222            bitField0_ |= 0x00000040;
10223            name_ = value;
10224            
10225            return this;
10226          }
10227          /**
10228           * <code>required int32 name = 6;</code>
10229           */
10230          public Builder clearName() {
10231            bitField0_ = (bitField0_ & ~0x00000040);
10232            name_ = 0;
10233            
10234            return this;
10235          }
10236    
10237          // repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;
10238          private java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter> valueParameter_ =
10239            java.util.Collections.emptyList();
10240          private void ensureValueParameterIsMutable() {
10241            if (!((bitField0_ & 0x00000080) == 0x00000080)) {
10242              valueParameter_ = new java.util.ArrayList<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter>(valueParameter_);
10243              bitField0_ |= 0x00000080;
10244             }
10245          }
10246    
10247          /**
10248           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10249           *
10250           * <pre>
10251           * Value parameters for functions and constructors, or setter value parameter for properties
10252           * </pre>
10253           */
10254          public java.util.List<org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter> getValueParameterList() {
10255            return java.util.Collections.unmodifiableList(valueParameter_);
10256          }
10257          /**
10258           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10259           *
10260           * <pre>
10261           * Value parameters for functions and constructors, or setter value parameter for properties
10262           * </pre>
10263           */
10264          public int getValueParameterCount() {
10265            return valueParameter_.size();
10266          }
10267          /**
10268           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10269           *
10270           * <pre>
10271           * Value parameters for functions and constructors, or setter value parameter for properties
10272           * </pre>
10273           */
10274          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter getValueParameter(int index) {
10275            return valueParameter_.get(index);
10276          }
10277          /**
10278           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10279           *
10280           * <pre>
10281           * Value parameters for functions and constructors, or setter value parameter for properties
10282           * </pre>
10283           */
10284          public Builder setValueParameter(
10285              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter value) {
10286            if (value == null) {
10287              throw new NullPointerException();
10288            }
10289            ensureValueParameterIsMutable();
10290            valueParameter_.set(index, value);
10291    
10292            return this;
10293          }
10294          /**
10295           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10296           *
10297           * <pre>
10298           * Value parameters for functions and constructors, or setter value parameter for properties
10299           * </pre>
10300           */
10301          public Builder setValueParameter(
10302              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter.Builder builderForValue) {
10303            ensureValueParameterIsMutable();
10304            valueParameter_.set(index, builderForValue.build());
10305    
10306            return this;
10307          }
10308          /**
10309           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10310           *
10311           * <pre>
10312           * Value parameters for functions and constructors, or setter value parameter for properties
10313           * </pre>
10314           */
10315          public Builder addValueParameter(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter value) {
10316            if (value == null) {
10317              throw new NullPointerException();
10318            }
10319            ensureValueParameterIsMutable();
10320            valueParameter_.add(value);
10321    
10322            return this;
10323          }
10324          /**
10325           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10326           *
10327           * <pre>
10328           * Value parameters for functions and constructors, or setter value parameter for properties
10329           * </pre>
10330           */
10331          public Builder addValueParameter(
10332              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter value) {
10333            if (value == null) {
10334              throw new NullPointerException();
10335            }
10336            ensureValueParameterIsMutable();
10337            valueParameter_.add(index, value);
10338    
10339            return this;
10340          }
10341          /**
10342           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10343           *
10344           * <pre>
10345           * Value parameters for functions and constructors, or setter value parameter for properties
10346           * </pre>
10347           */
10348          public Builder addValueParameter(
10349              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter.Builder builderForValue) {
10350            ensureValueParameterIsMutable();
10351            valueParameter_.add(builderForValue.build());
10352    
10353            return this;
10354          }
10355          /**
10356           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10357           *
10358           * <pre>
10359           * Value parameters for functions and constructors, or setter value parameter for properties
10360           * </pre>
10361           */
10362          public Builder addValueParameter(
10363              int index, org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter.Builder builderForValue) {
10364            ensureValueParameterIsMutable();
10365            valueParameter_.add(index, builderForValue.build());
10366    
10367            return this;
10368          }
10369          /**
10370           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10371           *
10372           * <pre>
10373           * Value parameters for functions and constructors, or setter value parameter for properties
10374           * </pre>
10375           */
10376          public Builder addAllValueParameter(
10377              java.lang.Iterable<? extends org.jetbrains.jet.descriptors.serialization.ProtoBuf.Callable.ValueParameter> values) {
10378            ensureValueParameterIsMutable();
10379            super.addAll(values, valueParameter_);
10380    
10381            return this;
10382          }
10383          /**
10384           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10385           *
10386           * <pre>
10387           * Value parameters for functions and constructors, or setter value parameter for properties
10388           * </pre>
10389           */
10390          public Builder clearValueParameter() {
10391            valueParameter_ = java.util.Collections.emptyList();
10392            bitField0_ = (bitField0_ & ~0x00000080);
10393    
10394            return this;
10395          }
10396          /**
10397           * <code>repeated .org.jetbrains.jet.descriptors.serialization.Callable.ValueParameter value_parameter = 7;</code>
10398           *
10399           * <pre>
10400           * Value parameters for functions and constructors, or setter value parameter for properties
10401           * </pre>
10402           */
10403          public Builder removeValueParameter(int index) {
10404            ensureValueParameterIsMutable();
10405            valueParameter_.remove(index);
10406    
10407            return this;
10408          }
10409    
10410          // required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;
10411          private org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type returnType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
10412          /**
10413           * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
10414           */
10415          public boolean hasReturnType() {
10416            return ((bitField0_ & 0x00000100) == 0x00000100);
10417          }
10418          /**
10419           * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
10420           */
10421          public org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type getReturnType() {
10422            return returnType_;
10423          }
10424          /**
10425           * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
10426           */
10427          public Builder setReturnType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
10428            if (value == null) {
10429              throw new NullPointerException();
10430            }
10431            returnType_ = value;
10432    
10433            bitField0_ |= 0x00000100;
10434            return this;
10435          }
10436          /**
10437           * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
10438           */
10439          public Builder setReturnType(
10440              org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.Builder builderForValue) {
10441            returnType_ = builderForValue.build();
10442    
10443            bitField0_ |= 0x00000100;
10444            return this;
10445          }
10446          /**
10447           * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
10448           */
10449          public Builder mergeReturnType(org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type value) {
10450            if (((bitField0_ & 0x00000100) == 0x00000100) &&
10451                returnType_ != org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance()) {
10452              returnType_ =
10453                org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.newBuilder(returnType_).mergeFrom(value).buildPartial();
10454            } else {
10455              returnType_ = value;
10456            }
10457    
10458            bitField0_ |= 0x00000100;
10459            return this;
10460          }
10461          /**
10462           * <code>required .org.jetbrains.jet.descriptors.serialization.Type return_type = 8;</code>
10463           */
10464          public Builder clearReturnType() {
10465            returnType_ = org.jetbrains.jet.descriptors.serialization.ProtoBuf.Type.getDefaultInstance();
10466    
10467            bitField0_ = (bitField0_ & ~0x00000100);
10468            return this;
10469          }
10470    
10471          // @@protoc_insertion_point(builder_scope:org.jetbrains.jet.descriptors.serialization.Callable)
10472        }
10473    
10474        static {
10475          defaultInstance = new Callable(true);
10476          defaultInstance.initFields();
10477        }
10478    
10479        // @@protoc_insertion_point(class_scope:org.jetbrains.jet.descriptors.serialization.Callable)
10480      }
10481    
10482    
10483      static {
10484      }
10485    
10486      // @@protoc_insertion_point(outer_class_scope)
10487    }