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

Unified Diff: lib/src/protobuf/builder_info.dart

Issue 1844293003: Add generic types for strong mode (Closed) Base URL: git@github.com:dart-lang/dart-protobuf.git@master
Patch Set: oops, change all callers to use fi._createRepeatedField Created 4 years, 9 months 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 side-by-side diff with in-line comments
Download patch
Index: lib/src/protobuf/builder_info.dart
diff --git a/lib/src/protobuf/builder_info.dart b/lib/src/protobuf/builder_info.dart
index e581284eec79137f1d193d8468061d4ba019c16b..cc5a1dc47828fcf920c70dca89bbb26a6a9453e1 100644
--- a/lib/src/protobuf/builder_info.dart
+++ b/lib/src/protobuf/builder_info.dart
@@ -18,21 +18,22 @@ class BuilderInfo {
BuilderInfo(this.messageName);
- void add(int tagNumber, String name, int fieldType,
- dynamic defaultOrMaker,
- CreateBuilderFunc subBuilder,
- ValueOfFunc valueOf) {
+ void add/*<T>*/(
+ int tagNumber,
+ String name,
+ int fieldType,
+ dynamic defaultOrMaker,
+ CreateBuilderFunc subBuilder,
+ ValueOfFunc valueOf) {
var index = fieldInfo.length;
- addField(new FieldInfo(
- name, tagNumber, index, fieldType, defaultOrMaker, subBuilder, valueOf));
+ addField(new FieldInfo/*<T>*/(name, tagNumber, index, fieldType,
+ defaultOrMaker, subBuilder, valueOf));
}
- void addRepeated(int tagNumber, String name, int fieldType,
- CheckFunc check,
- CreateBuilderFunc subBuilder,
- ValueOfFunc valueOf) {
+ void addRepeated/*<T>*/(int tagNumber, String name, int fieldType,
+ CheckFunc check, CreateBuilderFunc subBuilder, ValueOfFunc valueOf) {
var index = fieldInfo.length;
- addField(new FieldInfo.repeated(
+ addField(new FieldInfo/*<T>*/ .repeated(
name, tagNumber, index, fieldType, check, subBuilder, valueOf));
}
@@ -42,41 +43,39 @@ class BuilderInfo {
byName[fi.name] = fi;
}
- void a(int tagNumber, String name, int fieldType,
- [dynamic defaultOrMaker,
- CreateBuilderFunc subBuilder,
- ValueOfFunc valueOf]) {
- add(tagNumber, name, fieldType,
- defaultOrMaker, subBuilder, valueOf);
+ void a/*<T>*/(int tagNumber, String name, int fieldType,
+ [dynamic defaultOrMaker,
+ CreateBuilderFunc subBuilder,
+ ValueOfFunc valueOf]) {
+ add/*<T>*/(tagNumber, name, fieldType, defaultOrMaker, subBuilder, valueOf);
}
// Enum.
- void e(int tagNumber, String name, int fieldType,
- dynamic defaultOrMaker, ValueOfFunc valueOf) {
- add(tagNumber, name, fieldType,
- defaultOrMaker, null, valueOf);
+ void e/*<T>*/(int tagNumber, String name, int fieldType,
+ dynamic defaultOrMaker, ValueOfFunc valueOf) {
+ add/*<T>*/(tagNumber, name, fieldType, defaultOrMaker, null, valueOf);
}
// Repeated message.
// TODO(skybrian): migrate to pp() and remove.
- void m(int tagNumber, String name,
- CreateBuilderFunc subBuilder, MakeDefaultFunc makeDefault) {
- add(tagNumber, name, PbFieldType._REPEATED_MESSAGE,
- makeDefault, subBuilder, null);
+ void m/*<T>*/(int tagNumber, String name, CreateBuilderFunc subBuilder,
+ MakeDefaultFunc makeDefault) {
+ add/*<T>*/(tagNumber, name, PbFieldType._REPEATED_MESSAGE, makeDefault,
+ subBuilder, null);
}
// Repeated, not a message, group, or enum.
- void p(int tagNumber, String name, int fieldType) {
+ void p/*<T>*/(int tagNumber, String name, int fieldType) {
assert(!_isGroupOrMessage(fieldType) && !_isEnum(fieldType));
- addRepeated(tagNumber, name, fieldType,
- getCheckFunction(fieldType), null, null);
+ addRepeated/*<T>*/(
+ tagNumber, name, fieldType, getCheckFunction(fieldType), null, null);
}
// Repeated message, group, or enum.
- void pp(int tagNumber, String name, int fieldType, CheckFunc check,
- [CreateBuilderFunc subBuilder, ValueOfFunc valueOf]) {
+ void pp/*<T>*/(int tagNumber, String name, int fieldType, CheckFunc check,
+ [CreateBuilderFunc subBuilder, ValueOfFunc valueOf]) {
assert(_isGroupOrMessage(fieldType) || _isEnum(fieldType));
- addRepeated(tagNumber, name, fieldType, check, subBuilder, valueOf);
+ addRepeated/*<T>*/(tagNumber, name, fieldType, check, subBuilder, valueOf);
}
bool containsTagNumber(int tagNumber) => fieldInfo.containsKey(tagNumber);
@@ -123,7 +122,7 @@ class BuilderInfo {
// TODO(skybrian): perhaps the code generator should insert the FieldInfos
// in tag number order, to avoid sorting them?
_sortedByTag = new List<FieldInfo>.from(fieldInfo.values)
- ..sort((a, b) => a.tagNumber.compareTo(b.tagNumber));
+ ..sort((a, b) => a.tagNumber.compareTo(b.tagNumber));
return _sortedByTag;
}
@@ -131,14 +130,13 @@ class BuilderInfo {
int tagNumber, ExtensionRegistry extensionRegistry) {
CreateBuilderFunc subBuilderFunc = subBuilder(tagNumber);
if (subBuilderFunc == null && extensionRegistry != null) {
- subBuilderFunc = extensionRegistry.getExtension(messageName,
- tagNumber).subBuilder;
+ subBuilderFunc =
+ extensionRegistry.getExtension(messageName, tagNumber).subBuilder;
}
return subBuilderFunc();
}
_decodeEnum(int tagNumber, ExtensionRegistry registry, int rawValue) {
-
ValueOfFunc f = valueOfFunc(tagNumber);
if (f == null && registry != null) {
f = registry.getExtension(messageName, tagNumber).valueOf;

Powered by Google App Engine
This is Rietveld 408576698