Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(233)

Side by Side Diff: lib/src/protobuf/generated_message.dart

Issue 814213003: Allow constants as field initial values as well as creation thunks (Closed) Base URL: https://github.com/dart-lang/dart-protobuf@master
Patch Set: Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « lib/src/protobuf/field_info.dart ('k') | pubspec.yaml » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 part of protobuf; 5 part of protobuf;
6 6
7 typedef GeneratedMessage CreateBuilderFunc(); 7 typedef GeneratedMessage CreateBuilderFunc();
8 typedef Object MakeDefaultFunc(); 8 typedef Object MakeDefaultFunc();
9 typedef ProtobufEnum ValueOfFunc(int value); 9 typedef ProtobufEnum ValueOfFunc(int value);
10 10
(...skipping 471 matching lines...) Expand 10 before | Expand all | Expand 10 after
482 case _OPTIONAL_FLOAT: 482 case _OPTIONAL_FLOAT:
483 _fieldValues[tagNumber] = input.readFloat(); 483 _fieldValues[tagNumber] = input.readFloat();
484 break; 484 break;
485 case _OPTIONAL_DOUBLE: 485 case _OPTIONAL_DOUBLE:
486 _fieldValues[tagNumber] = input.readDouble(); 486 _fieldValues[tagNumber] = input.readDouble();
487 break; 487 break;
488 case _OPTIONAL_ENUM: 488 case _OPTIONAL_ENUM:
489 int rawValue = input.readEnum(); 489 int rawValue = input.readEnum();
490 var value = _getValueOfFunc(tagNumber, extensionRegistry)(rawValue); 490 var value = _getValueOfFunc(tagNumber, extensionRegistry)(rawValue);
491 if (value == null) { 491 if (value == null) {
492 unknownFields.mergeVarintField(tagNumber, makeLongInt(rawValue)); 492 unknownFields.mergeVarintField(tagNumber, new Int64(rawValue));
493 } else { 493 } else {
494 _fieldValues[tagNumber] = value; 494 _fieldValues[tagNumber] = value;
495 } 495 }
496 break; 496 break;
497 case _OPTIONAL_GROUP: 497 case _OPTIONAL_GROUP:
498 GeneratedMessage subMessage = 498 GeneratedMessage subMessage =
499 _getEmptyMessage(tagNumber, extensionRegistry); 499 _getEmptyMessage(tagNumber, extensionRegistry);
500 if (_fieldValues.containsKey(tagNumber)) { 500 if (_fieldValues.containsKey(tagNumber)) {
501 subMessage.mergeFromMessage(getField(tagNumber)); 501 subMessage.mergeFromMessage(getField(tagNumber));
502 } 502 }
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
557 readPackable(wireType, tagNumber, input.readFloat); 557 readPackable(wireType, tagNumber, input.readFloat);
558 break; 558 break;
559 case _REPEATED_DOUBLE: 559 case _REPEATED_DOUBLE:
560 readPackable(wireType, tagNumber, input.readDouble); 560 readPackable(wireType, tagNumber, input.readDouble);
561 break; 561 break;
562 case _REPEATED_ENUM: 562 case _REPEATED_ENUM:
563 readPackableIoc(wireType, tagNumber, (var assigner){ 563 readPackableIoc(wireType, tagNumber, (var assigner){
564 int rawValue = input.readEnum(); 564 int rawValue = input.readEnum();
565 var value = _getValueOfFunc(tagNumber, extensionRegistry)(rawValue); 565 var value = _getValueOfFunc(tagNumber, extensionRegistry)(rawValue);
566 if (value == null) { 566 if (value == null) {
567 unknownFields.mergeVarintField(tagNumber, makeLongInt(rawValue)); 567 unknownFields.mergeVarintField(tagNumber, new Int64(rawValue));
568 } else { 568 } else {
569 assigner(value); 569 assigner(value);
570 } 570 }
571 }); 571 });
572 break; 572 break;
573 case _REPEATED_GROUP: 573 case _REPEATED_GROUP:
574 GeneratedMessage subMessage = 574 GeneratedMessage subMessage =
575 _getEmptyMessage(tagNumber, extensionRegistry); 575 _getEmptyMessage(tagNumber, extensionRegistry);
576 input.readGroup(tagNumber, subMessage, extensionRegistry); 576 input.readGroup(tagNumber, subMessage, extensionRegistry);
577 List list = getField(tagNumber); 577 List list = getField(tagNumber);
(...skipping 658 matching lines...) Expand 10 before | Expand all | Expand 10 after
1236 _generateMessage(tagNumber, value, 'not a GeneratedMessage')); 1236 _generateMessage(tagNumber, value, 'not a GeneratedMessage'));
1237 } 1237 }
1238 break; 1238 break;
1239 default: 1239 default:
1240 throw new ArgumentError( 1240 throw new ArgumentError(
1241 _generateMessage(tagNumber, value, 'field has unknown type ' 1241 _generateMessage(tagNumber, value, 'field has unknown type '
1242 '$fieldType')); 1242 '$fieldType'));
1243 } 1243 }
1244 } 1244 }
1245 } 1245 }
OLDNEW
« no previous file with comments | « lib/src/protobuf/field_info.dart ('k') | pubspec.yaml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698