Google OR-Tools v9.12
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
RegularLimitParameters.java
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// NO CHECKED-IN PROTOBUF GENCODE
3// source: ortools/constraint_solver/search_limit.proto
4// Protobuf Java Version: 4.29.3
5
6package com.google.ortools.constraintsolver;
7
16public final class RegularLimitParameters extends
17 com.google.protobuf.GeneratedMessage implements
18 // @@protoc_insertion_point(message_implements:operations_research.RegularLimitParameters)
20private static final long serialVersionUID = 0L;
21 static {
22 com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
23 com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
24 /* major= */ 4,
25 /* minor= */ 29,
26 /* patch= */ 3,
27 /* suffix= */ "",
28 RegularLimitParameters.class.getName());
29 }
30 // Use RegularLimitParameters.newBuilder() to construct.
31 private RegularLimitParameters(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
32 super(builder);
33 }
34 private RegularLimitParameters() {
35 }
36
37 public static final com.google.protobuf.Descriptors.Descriptor
39 return com.google.ortools.constraintsolver.SearchLimitProtobuf.internal_static_operations_research_RegularLimitParameters_descriptor;
40 }
41
42 @java.lang.Override
43 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
45 return com.google.ortools.constraintsolver.SearchLimitProtobuf.internal_static_operations_research_RegularLimitParameters_fieldAccessorTable
46 .ensureFieldAccessorsInitialized(
47 com.google.ortools.constraintsolver.RegularLimitParameters.class, com.google.ortools.constraintsolver.RegularLimitParameters.Builder.class);
48 }
49
50 public static final int TIME_FIELD_NUMBER = 1;
51 private long time_ = 0L;
60 @java.lang.Override
61 public long getTime() {
62 return time_;
63 }
64
65 public static final int BRANCHES_FIELD_NUMBER = 2;
66 private long branches_ = 0L;
71 @java.lang.Override
72 public long getBranches() {
73 return branches_;
74 }
75
76 public static final int FAILURES_FIELD_NUMBER = 3;
77 private long failures_ = 0L;
82 @java.lang.Override
83 public long getFailures() {
84 return failures_;
85 }
86
87 public static final int SOLUTIONS_FIELD_NUMBER = 4;
88 private long solutions_ = 0L;
93 @java.lang.Override
94 public long getSolutions() {
95 return solutions_;
96 }
97
98 public static final int SMART_TIME_CHECK_FIELD_NUMBER = 5;
99 private boolean smartTimeCheck_ = false;
104 @java.lang.Override
105 public boolean getSmartTimeCheck() {
106 return smartTimeCheck_;
107 }
108
109 public static final int CUMULATIVE_FIELD_NUMBER = 6;
110 private boolean cumulative_ = false;
115 @java.lang.Override
116 public boolean getCumulative() {
117 return cumulative_;
118 }
119
120 private byte memoizedIsInitialized = -1;
121 @java.lang.Override
122 public final boolean isInitialized() {
123 byte isInitialized = memoizedIsInitialized;
124 if (isInitialized == 1) return true;
125 if (isInitialized == 0) return false;
126
127 memoizedIsInitialized = 1;
128 return true;
129 }
130
131 @java.lang.Override
132 public void writeTo(com.google.protobuf.CodedOutputStream output)
133 throws java.io.IOException {
134 if (time_ != 0L) {
135 output.writeInt64(1, time_);
136 }
137 if (branches_ != 0L) {
138 output.writeInt64(2, branches_);
139 }
140 if (failures_ != 0L) {
141 output.writeInt64(3, failures_);
142 }
143 if (solutions_ != 0L) {
144 output.writeInt64(4, solutions_);
145 }
146 if (smartTimeCheck_ != false) {
147 output.writeBool(5, smartTimeCheck_);
148 }
149 if (cumulative_ != false) {
150 output.writeBool(6, cumulative_);
151 }
152 getUnknownFields().writeTo(output);
153 }
154
155 @java.lang.Override
156 public int getSerializedSize() {
157 int size = memoizedSize;
158 if (size != -1) return size;
159
160 size = 0;
161 if (time_ != 0L) {
162 size += com.google.protobuf.CodedOutputStream
163 .computeInt64Size(1, time_);
164 }
165 if (branches_ != 0L) {
166 size += com.google.protobuf.CodedOutputStream
167 .computeInt64Size(2, branches_);
168 }
169 if (failures_ != 0L) {
170 size += com.google.protobuf.CodedOutputStream
171 .computeInt64Size(3, failures_);
172 }
173 if (solutions_ != 0L) {
174 size += com.google.protobuf.CodedOutputStream
175 .computeInt64Size(4, solutions_);
176 }
177 if (smartTimeCheck_ != false) {
178 size += com.google.protobuf.CodedOutputStream
179 .computeBoolSize(5, smartTimeCheck_);
180 }
181 if (cumulative_ != false) {
182 size += com.google.protobuf.CodedOutputStream
183 .computeBoolSize(6, cumulative_);
184 }
185 size += getUnknownFields().getSerializedSize();
186 memoizedSize = size;
187 return size;
188 }
189
190 @java.lang.Override
191 public boolean equals(final java.lang.Object obj) {
192 if (obj == this) {
193 return true;
194 }
195 if (!(obj instanceof com.google.ortools.constraintsolver.RegularLimitParameters)) {
196 return super.equals(obj);
197 }
198 com.google.ortools.constraintsolver.RegularLimitParameters other = (com.google.ortools.constraintsolver.RegularLimitParameters) obj;
199
200 if (getTime()
201 != other.getTime()) return false;
202 if (getBranches()
203 != other.getBranches()) return false;
204 if (getFailures()
205 != other.getFailures()) return false;
206 if (getSolutions()
207 != other.getSolutions()) return false;
209 != other.getSmartTimeCheck()) return false;
210 if (getCumulative()
211 != other.getCumulative()) return false;
212 if (!getUnknownFields().equals(other.getUnknownFields())) return false;
213 return true;
214 }
215
216 @java.lang.Override
217 public int hashCode() {
218 if (memoizedHashCode != 0) {
219 return memoizedHashCode;
220 }
221 int hash = 41;
222 hash = (19 * hash) + getDescriptor().hashCode();
223 hash = (37 * hash) + TIME_FIELD_NUMBER;
224 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
225 getTime());
226 hash = (37 * hash) + BRANCHES_FIELD_NUMBER;
227 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
228 getBranches());
229 hash = (37 * hash) + FAILURES_FIELD_NUMBER;
230 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
231 getFailures());
232 hash = (37 * hash) + SOLUTIONS_FIELD_NUMBER;
233 hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
234 getSolutions());
235 hash = (37 * hash) + SMART_TIME_CHECK_FIELD_NUMBER;
236 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
238 hash = (37 * hash) + CUMULATIVE_FIELD_NUMBER;
239 hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
240 getCumulative());
241 hash = (29 * hash) + getUnknownFields().hashCode();
242 memoizedHashCode = hash;
243 return hash;
244 }
245
247 java.nio.ByteBuffer data)
248 throws com.google.protobuf.InvalidProtocolBufferException {
249 return PARSER.parseFrom(data);
250 }
252 java.nio.ByteBuffer data,
253 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
254 throws com.google.protobuf.InvalidProtocolBufferException {
255 return PARSER.parseFrom(data, extensionRegistry);
256 }
258 com.google.protobuf.ByteString data)
259 throws com.google.protobuf.InvalidProtocolBufferException {
260 return PARSER.parseFrom(data);
261 }
263 com.google.protobuf.ByteString data,
264 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
265 throws com.google.protobuf.InvalidProtocolBufferException {
266 return PARSER.parseFrom(data, extensionRegistry);
267 }
269 throws com.google.protobuf.InvalidProtocolBufferException {
270 return PARSER.parseFrom(data);
271 }
273 byte[] data,
274 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
275 throws com.google.protobuf.InvalidProtocolBufferException {
276 return PARSER.parseFrom(data, extensionRegistry);
277 }
279 throws java.io.IOException {
280 return com.google.protobuf.GeneratedMessage
281 .parseWithIOException(PARSER, input);
282 }
284 java.io.InputStream input,
285 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
286 throws java.io.IOException {
287 return com.google.protobuf.GeneratedMessage
288 .parseWithIOException(PARSER, input, extensionRegistry);
289 }
290
292 throws java.io.IOException {
293 return com.google.protobuf.GeneratedMessage
294 .parseDelimitedWithIOException(PARSER, input);
295 }
296
298 java.io.InputStream input,
299 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
300 throws java.io.IOException {
301 return com.google.protobuf.GeneratedMessage
302 .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
303 }
305 com.google.protobuf.CodedInputStream input)
306 throws java.io.IOException {
307 return com.google.protobuf.GeneratedMessage
308 .parseWithIOException(PARSER, input);
309 }
311 com.google.protobuf.CodedInputStream input,
312 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
313 throws java.io.IOException {
314 return com.google.protobuf.GeneratedMessage
315 .parseWithIOException(PARSER, input, extensionRegistry);
316 }
317
318 @java.lang.Override
319 public Builder newBuilderForType() { return newBuilder(); }
320 public static Builder newBuilder() {
321 return DEFAULT_INSTANCE.toBuilder();
322 }
323 public static Builder newBuilder(com.google.ortools.constraintsolver.RegularLimitParameters prototype) {
324 return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
325 }
326 @java.lang.Override
328 return this == DEFAULT_INSTANCE
329 ? new Builder() : new Builder().mergeFrom(this);
330 }
331
332 @java.lang.Override
334 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
335 Builder builder = new Builder(parent);
336 return builder;
337 }
338
346 public static final class Builder extends
347 com.google.protobuf.GeneratedMessage.Builder<Builder> implements
348 // @@protoc_insertion_point(builder_implements:operations_research.RegularLimitParameters)
350 public static final com.google.protobuf.Descriptors.Descriptor
352 return com.google.ortools.constraintsolver.SearchLimitProtobuf.internal_static_operations_research_RegularLimitParameters_descriptor;
353 }
354
355 @java.lang.Override
356 protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
358 return com.google.ortools.constraintsolver.SearchLimitProtobuf.internal_static_operations_research_RegularLimitParameters_fieldAccessorTable
359 .ensureFieldAccessorsInitialized(
360 com.google.ortools.constraintsolver.RegularLimitParameters.class, com.google.ortools.constraintsolver.RegularLimitParameters.Builder.class);
361 }
362
363 // Construct using com.google.ortools.constraintsolver.RegularLimitParameters.newBuilder()
364 private Builder() {
365
366 }
367
368 private Builder(
369 com.google.protobuf.GeneratedMessage.BuilderParent parent) {
370 super(parent);
371
372 }
373 @java.lang.Override
374 public Builder clear() {
375 super.clear();
376 bitField0_ = 0;
377 time_ = 0L;
378 branches_ = 0L;
379 failures_ = 0L;
380 solutions_ = 0L;
381 smartTimeCheck_ = false;
382 cumulative_ = false;
383 return this;
384 }
385
386 @java.lang.Override
387 public com.google.protobuf.Descriptors.Descriptor
389 return com.google.ortools.constraintsolver.SearchLimitProtobuf.internal_static_operations_research_RegularLimitParameters_descriptor;
390 }
391
392 @java.lang.Override
394 return com.google.ortools.constraintsolver.RegularLimitParameters.getDefaultInstance();
395 }
396
397 @java.lang.Override
400 if (!result.isInitialized()) {
401 throw newUninitializedMessageException(result);
402 }
403 return result;
404 }
405
406 @java.lang.Override
408 com.google.ortools.constraintsolver.RegularLimitParameters result = new com.google.ortools.constraintsolver.RegularLimitParameters(this);
409 if (bitField0_ != 0) { buildPartial0(result); }
410 onBuilt();
411 return result;
412 }
413
414 private void buildPartial0(com.google.ortools.constraintsolver.RegularLimitParameters result) {
415 int from_bitField0_ = bitField0_;
416 if (((from_bitField0_ & 0x00000001) != 0)) {
417 result.time_ = time_;
418 }
419 if (((from_bitField0_ & 0x00000002) != 0)) {
420 result.branches_ = branches_;
421 }
422 if (((from_bitField0_ & 0x00000004) != 0)) {
423 result.failures_ = failures_;
424 }
425 if (((from_bitField0_ & 0x00000008) != 0)) {
426 result.solutions_ = solutions_;
427 }
428 if (((from_bitField0_ & 0x00000010) != 0)) {
429 result.smartTimeCheck_ = smartTimeCheck_;
430 }
431 if (((from_bitField0_ & 0x00000020) != 0)) {
432 result.cumulative_ = cumulative_;
433 }
434 }
435
436 @java.lang.Override
437 public Builder mergeFrom(com.google.protobuf.Message other) {
438 if (other instanceof com.google.ortools.constraintsolver.RegularLimitParameters) {
439 return mergeFrom((com.google.ortools.constraintsolver.RegularLimitParameters)other);
440 } else {
441 super.mergeFrom(other);
442 return this;
443 }
444 }
445
446 public Builder mergeFrom(com.google.ortools.constraintsolver.RegularLimitParameters other) {
447 if (other == com.google.ortools.constraintsolver.RegularLimitParameters.getDefaultInstance()) return this;
448 if (other.getTime() != 0L) {
449 setTime(other.getTime());
450 }
451 if (other.getBranches() != 0L) {
452 setBranches(other.getBranches());
453 }
454 if (other.getFailures() != 0L) {
455 setFailures(other.getFailures());
456 }
457 if (other.getSolutions() != 0L) {
458 setSolutions(other.getSolutions());
459 }
460 if (other.getSmartTimeCheck() != false) {
461 setSmartTimeCheck(other.getSmartTimeCheck());
462 }
463 if (other.getCumulative() != false) {
464 setCumulative(other.getCumulative());
465 }
466 this.mergeUnknownFields(other.getUnknownFields());
467 onChanged();
468 return this;
469 }
470
471 @java.lang.Override
472 public final boolean isInitialized() {
473 return true;
474 }
475
476 @java.lang.Override
477 public Builder mergeFrom(
478 com.google.protobuf.CodedInputStream input,
479 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
480 throws java.io.IOException {
481 if (extensionRegistry == null) {
482 throw new java.lang.NullPointerException();
483 }
484 try {
485 boolean done = false;
486 while (!done) {
487 int tag = input.readTag();
488 switch (tag) {
489 case 0:
490 done = true;
491 break;
492 case 8: {
493 time_ = input.readInt64();
494 bitField0_ |= 0x00000001;
495 break;
496 } // case 8
497 case 16: {
498 branches_ = input.readInt64();
499 bitField0_ |= 0x00000002;
500 break;
501 } // case 16
502 case 24: {
503 failures_ = input.readInt64();
504 bitField0_ |= 0x00000004;
505 break;
506 } // case 24
507 case 32: {
508 solutions_ = input.readInt64();
509 bitField0_ |= 0x00000008;
510 break;
511 } // case 32
512 case 40: {
513 smartTimeCheck_ = input.readBool();
514 bitField0_ |= 0x00000010;
515 break;
516 } // case 40
517 case 48: {
518 cumulative_ = input.readBool();
519 bitField0_ |= 0x00000020;
520 break;
521 } // case 48
522 default: {
523 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
524 done = true; // was an endgroup tag
525 }
526 break;
527 } // default:
528 } // switch (tag)
529 } // while (!done)
530 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
531 throw e.unwrapIOException();
532 } finally {
533 onChanged();
534 } // finally
535 return this;
536 }
537 private int bitField0_;
538
539 private long time_ ;
548 @java.lang.Override
549 public long getTime() {
550 return time_;
551 }
552
561 public Builder setTime(long value) {
562
563 time_ = value;
564 bitField0_ |= 0x00000001;
565 onChanged();
566 return this;
567 }
568
576 public Builder clearTime() {
577 bitField0_ = (bitField0_ & ~0x00000001);
578 time_ = 0L;
579 onChanged();
580 return this;
581 }
582
583 private long branches_ ;
588 @java.lang.Override
589 public long getBranches() {
590 return branches_;
591 }
592
597 public Builder setBranches(long value) {
598
599 branches_ = value;
600 bitField0_ |= 0x00000002;
601 onChanged();
602 return this;
603 }
604
608 public Builder clearBranches() {
609 bitField0_ = (bitField0_ & ~0x00000002);
610 branches_ = 0L;
611 onChanged();
612 return this;
613 }
614
615 private long failures_ ;
620 @java.lang.Override
621 public long getFailures() {
622 return failures_;
623 }
624
629 public Builder setFailures(long value) {
630
631 failures_ = value;
632 bitField0_ |= 0x00000004;
633 onChanged();
634 return this;
635 }
636
640 public Builder clearFailures() {
641 bitField0_ = (bitField0_ & ~0x00000004);
642 failures_ = 0L;
643 onChanged();
644 return this;
645 }
646
647 private long solutions_ ;
652 @java.lang.Override
653 public long getSolutions() {
654 return solutions_;
655 }
656
661 public Builder setSolutions(long value) {
662
663 solutions_ = value;
664 bitField0_ |= 0x00000008;
665 onChanged();
666 return this;
667 }
668
672 public Builder clearSolutions() {
673 bitField0_ = (bitField0_ & ~0x00000008);
674 solutions_ = 0L;
675 onChanged();
676 return this;
677 }
678
679 private boolean smartTimeCheck_ ;
684 @java.lang.Override
685 public boolean getSmartTimeCheck() {
686 return smartTimeCheck_;
687 }
688
693 public Builder setSmartTimeCheck(boolean value) {
694
695 smartTimeCheck_ = value;
696 bitField0_ |= 0x00000010;
697 onChanged();
698 return this;
699 }
700
704 public Builder clearSmartTimeCheck() {
705 bitField0_ = (bitField0_ & ~0x00000010);
706 smartTimeCheck_ = false;
707 onChanged();
708 return this;
709 }
710
711 private boolean cumulative_ ;
716 @java.lang.Override
717 public boolean getCumulative() {
718 return cumulative_;
719 }
720
725 public Builder setCumulative(boolean value) {
726
727 cumulative_ = value;
728 bitField0_ |= 0x00000020;
729 onChanged();
730 return this;
731 }
732
736 public Builder clearCumulative() {
737 bitField0_ = (bitField0_ & ~0x00000020);
738 cumulative_ = false;
739 onChanged();
740 return this;
741 }
742
743 // @@protoc_insertion_point(builder_scope:operations_research.RegularLimitParameters)
744 }
745
746 // @@protoc_insertion_point(class_scope:operations_research.RegularLimitParameters)
747 private static final com.google.ortools.constraintsolver.RegularLimitParameters DEFAULT_INSTANCE;
748 static {
749 DEFAULT_INSTANCE = new com.google.ortools.constraintsolver.RegularLimitParameters();
750 }
751
753 return DEFAULT_INSTANCE;
754 }
755
756 private static final com.google.protobuf.Parser<RegularLimitParameters>
757 PARSER = new com.google.protobuf.AbstractParser<RegularLimitParameters>() {
758 @java.lang.Override
759 public RegularLimitParameters parsePartialFrom(
760 com.google.protobuf.CodedInputStream input,
761 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
762 throws com.google.protobuf.InvalidProtocolBufferException {
763 Builder builder = newBuilder();
764 try {
765 builder.mergeFrom(input, extensionRegistry);
766 } catch (com.google.protobuf.InvalidProtocolBufferException e) {
767 throw e.setUnfinishedMessage(builder.buildPartial());
768 } catch (com.google.protobuf.UninitializedMessageException e) {
769 throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
770 } catch (java.io.IOException e) {
771 throw new com.google.protobuf.InvalidProtocolBufferException(e)
772 .setUnfinishedMessage(builder.buildPartial());
773 }
774 return builder.buildPartial();
775 }
776 };
777
778 public static com.google.protobuf.Parser<RegularLimitParameters> parser() {
779 return PARSER;
780 }
781
782 @java.lang.Override
783 public com.google.protobuf.Parser<RegularLimitParameters> getParserForType() {
784 return PARSER;
785 }
786
787 @java.lang.Override
791
792}
793
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
Builder mergeFrom(com.google.ortools.constraintsolver.RegularLimitParameters other)
com.google.ortools.constraintsolver.RegularLimitParameters build()
Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
com.google.ortools.constraintsolver.RegularLimitParameters buildPartial()
com.google.ortools.constraintsolver.RegularLimitParameters getDefaultInstanceForType()
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(java.nio.ByteBuffer data)
static com.google.ortools.constraintsolver.RegularLimitParameters getDefaultInstance()
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(com.google.protobuf.ByteString data)
static com.google.ortools.constraintsolver.RegularLimitParameters parseDelimitedFrom(java.io.InputStream input)
com.google.ortools.constraintsolver.RegularLimitParameters getDefaultInstanceForType()
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent)
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(com.google.protobuf.CodedInputStream input)
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static com.google.ortools.constraintsolver.RegularLimitParameters parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
com.google.protobuf.Parser< RegularLimitParameters > getParserForType()
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
static Builder newBuilder(com.google.ortools.constraintsolver.RegularLimitParameters prototype)
void writeTo(com.google.protobuf.CodedOutputStream output)
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(byte[] data)
static com.google.ortools.constraintsolver.RegularLimitParameters parseFrom(java.io.InputStream input)
static com.google.protobuf.Parser< RegularLimitParameters > parser()