Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions benchmarks/bin/from_proto3_json_object.dart
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,12 @@ class Benchmark extends BenchmarkBase {
@override
void run() {
sink1 =
p2.GoogleMessage1.create()
p2.GoogleMessage1()
..mergeFromProto3Json(_message1Proto2Proto3JsonObject);
sink2 =
p3.GoogleMessage1.create()
p3.GoogleMessage1()
..mergeFromProto3Json(_message1Proto3Proto3JsonObject);
sink3 =
GoogleMessage2.create()..mergeFromProto3Json(_message2Proto3JsonObject);
sink3 = GoogleMessage2()..mergeFromProto3Json(_message2Proto3JsonObject);
}
}

Expand Down
6 changes: 3 additions & 3 deletions benchmarks/bin/from_proto3_json_string.dart
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,13 @@ class Benchmark extends BenchmarkBase {
@override
void run() {
sink1 =
p2.GoogleMessage1.create()
p2.GoogleMessage1()
..mergeFromProto3Json(jsonDecode(_message1Proto2Proto3JsonString));
sink2 =
p3.GoogleMessage1.create()
p3.GoogleMessage1()
..mergeFromProto3Json(jsonDecode(_message1Proto3Proto3JsonString));
sink3 =
GoogleMessage2.create()
GoogleMessage2()
..mergeFromProto3Json(jsonDecode(_message2Proto3JsonString));
}
}
Expand Down
6 changes: 3 additions & 3 deletions protobuf/lib/src/protobuf/builder_info.dart
Original file line number Diff line number Diff line change
Expand Up @@ -411,7 +411,7 @@ class BuilderInfo {
void aOM<T extends GeneratedMessage>(
int tagNumber,
String name, {
required T Function() subBuilder,
required GeneratedMessage Function() subBuilder,
String? protoName,
}) {
add<T>(
Expand All @@ -430,7 +430,7 @@ class BuilderInfo {
void aQM<T extends GeneratedMessage>(
int tagNumber,
String name, {
required T Function() subBuilder,
required GeneratedMessage Function() subBuilder,
String? protoName,
}) {
add<T>(
Expand All @@ -449,7 +449,7 @@ class BuilderInfo {
void pPM<T extends GeneratedMessage>(
int tagNumber,
String name, {
required T Function() subBuilder,
required GeneratedMessage Function() subBuilder,
String? protoName,
}) {
addRepeated<T>(
Expand Down
40 changes: 10 additions & 30 deletions protobuf/lib/src/protobuf/extension.dart
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,12 @@ class Extension<T> extends FieldInfo<T> {
String name,
int tagNumber,
int fieldType, {
dynamic defaultOrMaker,
CreateBuilderFunc? subBuilder,
ValueOfFunc? valueOf,
List<ProtobufEnum>? enumValues,
String? protoName,
}) : super(
name,
tagNumber,
null,
fieldType,
defaultOrMaker: defaultOrMaker,
subBuilder: subBuilder,
valueOf: valueOf,
enumValues: enumValues,
protoName: protoName,
);
super.defaultOrMaker,
super.subBuilder,
super.valueOf,
super.enumValues,
super.protoName,
}) : super(name, tagNumber, null, fieldType);

Extension.repeated(
this.extendee,
Expand All @@ -37,20 +27,10 @@ class Extension<T> extends FieldInfo<T> {
int fieldType, {
required CheckFunc<T>? check,
CreateBuilderFunc? subBuilder,
ValueOfFunc? valueOf,
List<ProtobufEnum>? enumValues,
String? protoName,
}) : super.repeated(
name,
tagNumber,
null,
fieldType,
check,
subBuilder,
valueOf: valueOf,
enumValues: enumValues,
protoName: protoName,
);
super.valueOf,
super.enumValues,
super.protoName,
}) : super.repeated(name, tagNumber, null, fieldType, check, subBuilder);

@override
int get hashCode => extendee.hashCode * 31 + tagNumber;
Expand Down
6 changes: 2 additions & 4 deletions protobuf/lib/src/protobuf/field_info.dart
Original file line number Diff line number Diff line change
Expand Up @@ -295,17 +295,15 @@ class MapFieldInfo<K, V> extends FieldInfo<PbMap<K, V>?> {
this.valueFieldType,
this.mapEntryBuilderInfo,
this.valueCreator, {
ProtobufEnum? defaultEnumValue,
String? protoName,
super.defaultEnumValue,
super.protoName,
}) : assert(PbFieldType.isMapField(type)),
super(
name,
tagNumber,
index,
type,
defaultOrMaker: () => newPbMap<K, V>(keyFieldType, valueFieldType),
defaultEnumValue: defaultEnumValue,
protoName: protoName,
) {
assert(!PbFieldType.isEnum(type) || valueOf != null);
}
Expand Down
15 changes: 8 additions & 7 deletions protobuf/lib/src/protobuf/generated_message.dart
Original file line number Diff line number Diff line change
Expand Up @@ -544,16 +544,17 @@ abstract class GeneratedMessage {
_defaultMakers = {};

static T Function() _defaultMakerFor<T extends GeneratedMessage>(
T Function()? createFn,
) => _getSingletonMaker(createFn!)._frozenSingletonCreator;
GeneratedMessage Function()? createFn,
) => _getSingletonMaker<T>(createFn!)._frozenSingletonCreator;

/// For generated code only.
/// @nodoc
static T $_defaultFor<T extends GeneratedMessage>(T Function() createFn) =>
_getSingletonMaker(createFn)._frozenSingleton;
static T $_defaultFor<T extends GeneratedMessage>(
GeneratedMessage Function() createFn,
) => _getSingletonMaker<T>(createFn)._frozenSingleton;

static _SingletonMaker<T> _getSingletonMaker<T extends GeneratedMessage>(
T Function() fun,
GeneratedMessage Function() fun,
) {
final oldMaker = _defaultMakers[fun];
if (oldMaker != null) {
Expand All @@ -571,11 +572,11 @@ abstract class GeneratedMessage {
// A downcast to a generic interface type is much easier to perform at runtime
// than a downcast to a generic function type.
class _SingletonMaker<T extends GeneratedMessage> {
final T Function() _creator;
final GeneratedMessage Function() _creator;

_SingletonMaker(this._creator);

late final T _frozenSingleton = _creator()..freeze();
late final T _frozenSingleton = (_creator() as T)..freeze();
// ignore: prefer_function_declarations_over_variables
late final T Function() _frozenSingletonCreator = () => _frozenSingleton;
}
Expand Down
12 changes: 6 additions & 6 deletions protobuf/lib/well_known_types/google/protobuf/any.pb.dart
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ class Any extends $pb.GeneratedMessage with $mixin.AnyMixin {
$core.String? typeUrl,
$core.List<$core.int>? value,
}) {
final result = create();
final result = Any._();
if (typeUrl != null) result.typeUrl = typeUrl;
if (value != null) result.value = value;
return result;
Expand All @@ -118,10 +118,10 @@ class Any extends $pb.GeneratedMessage with $mixin.AnyMixin {

factory Any.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
Any._()..mergeFromBuffer(data, registry);
factory Any.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
Any._()..mergeFromJson(json, registry);

static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'Any',
Expand All @@ -144,9 +144,9 @@ class Any extends $pb.GeneratedMessage with $mixin.AnyMixin {
$pb.BuilderInfo get info_ => _i;

@$core.pragma('dart2js:noInline')
static Any create() => Any._();
static $pb.GeneratedMessage create() => Any._();
@$core.override
Any createEmptyInstance() => create();
Any createEmptyInstance() => Any._();
@$core.pragma('dart2js:noInline')
static Any getDefault() =>
_defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Any>(create);
Expand Down Expand Up @@ -205,7 +205,7 @@ class Any extends $pb.GeneratedMessage with $mixin.AnyMixin {
/// the fully qualified name of the type of [message].
static Any pack($pb.GeneratedMessage message,
{$core.String typeUrlPrefix = 'type.googleapis.com'}) {
final result = create();
final result = Any._();
$mixin.AnyMixin.packIntoAny(result, message, typeUrlPrefix: typeUrlPrefix);
return result;
}
Expand Down
30 changes: 15 additions & 15 deletions protobuf/lib/well_known_types/google/protobuf/api.pb.dart
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ class Api extends $pb.GeneratedMessage {
$0.Syntax? syntax,
$core.String? edition,
}) {
final result = create();
final result = Api._();
if (name != null) result.name = name;
if (methods != null) result.methods.addAll(methods);
if (options != null) result.options.addAll(options);
Expand All @@ -60,10 +60,10 @@ class Api extends $pb.GeneratedMessage {

factory Api.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
Api._()..mergeFromBuffer(data, registry);
factory Api.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
Api._()..mergeFromJson(json, registry);

static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'Api',
Expand Down Expand Up @@ -94,9 +94,9 @@ class Api extends $pb.GeneratedMessage {
$pb.BuilderInfo get info_ => _i;

@$core.pragma('dart2js:noInline')
static Api create() => Api._();
static $pb.GeneratedMessage create() => Api._();
@$core.override
Api createEmptyInstance() => create();
Api createEmptyInstance() => Api._();
@$core.pragma('dart2js:noInline')
static Api getDefault() =>
_defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Api>(create);
Expand Down Expand Up @@ -204,7 +204,7 @@ class Method extends $pb.GeneratedMessage {
@$core.Deprecated('This field is deprecated.') $0.Syntax? syntax,
@$core.Deprecated('This field is deprecated.') $core.String? edition,
}) {
final result = create();
final result = Method._();
if (name != null) result.name = name;
if (requestTypeUrl != null) result.requestTypeUrl = requestTypeUrl;
if (requestStreaming != null) result.requestStreaming = requestStreaming;
Expand All @@ -220,10 +220,10 @@ class Method extends $pb.GeneratedMessage {

factory Method.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
Method._()..mergeFromBuffer(data, registry);
factory Method.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
Method._()..mergeFromJson(json, registry);

static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'Method',
Expand Down Expand Up @@ -252,9 +252,9 @@ class Method extends $pb.GeneratedMessage {
$pb.BuilderInfo get info_ => _i;

@$core.pragma('dart2js:noInline')
static Method create() => Method._();
static $pb.GeneratedMessage create() => Method._();
@$core.override
Method createEmptyInstance() => create();
Method createEmptyInstance() => Method._();
@$core.pragma('dart2js:noInline')
static Method getDefault() =>
_defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Method>(create);
Expand Down Expand Up @@ -432,7 +432,7 @@ class Mixin extends $pb.GeneratedMessage {
$core.String? name,
$core.String? root,
}) {
final result = create();
final result = Mixin._();
if (name != null) result.name = name;
if (root != null) result.root = root;
return result;
Expand All @@ -442,10 +442,10 @@ class Mixin extends $pb.GeneratedMessage {

factory Mixin.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
Mixin._()..mergeFromBuffer(data, registry);
factory Mixin.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
Mixin._()..mergeFromJson(json, registry);

static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'Mixin',
Expand All @@ -466,9 +466,9 @@ class Mixin extends $pb.GeneratedMessage {
$pb.BuilderInfo get info_ => _i;

@$core.pragma('dart2js:noInline')
static Mixin create() => Mixin._();
static $pb.GeneratedMessage create() => Mixin._();
@$core.override
Mixin createEmptyInstance() => create();
Mixin createEmptyInstance() => Mixin._();
@$core.pragma('dart2js:noInline')
static Mixin getDefault() =>
_defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Mixin>(create);
Expand Down
10 changes: 5 additions & 5 deletions protobuf/lib/well_known_types/google/protobuf/duration.pb.dart
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ class Duration extends $pb.GeneratedMessage with $mixin.DurationMixin {
$fixnum.Int64? seconds,
$core.int? nanos,
}) {
final result = create();
final result = Duration._();
if (seconds != null) result.seconds = seconds;
if (nanos != null) result.nanos = nanos;
return result;
Expand All @@ -92,10 +92,10 @@ class Duration extends $pb.GeneratedMessage with $mixin.DurationMixin {

factory Duration.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
Duration._()..mergeFromBuffer(data, registry);
factory Duration.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
Duration._()..mergeFromJson(json, registry);

static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'Duration',
Expand All @@ -117,9 +117,9 @@ class Duration extends $pb.GeneratedMessage with $mixin.DurationMixin {
$pb.BuilderInfo get info_ => _i;

@$core.pragma('dart2js:noInline')
static Duration create() => Duration._();
static $pb.GeneratedMessage create() => Duration._();
@$core.override
Duration createEmptyInstance() => create();
Duration createEmptyInstance() => Duration._();
@$core.pragma('dart2js:noInline')
static Duration getDefault() =>
_defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Duration>(create);
Expand Down
10 changes: 5 additions & 5 deletions protobuf/lib/well_known_types/google/protobuf/empty.pb.dart
Original file line number Diff line number Diff line change
Expand Up @@ -24,16 +24,16 @@ export 'package:protobuf/protobuf.dart' show GeneratedMessageGenericExtensions;
/// rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
/// }
class Empty extends $pb.GeneratedMessage {
factory Empty() => create();
factory Empty() => Empty._();

Empty._();

factory Empty.fromBuffer($core.List<$core.int> data,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromBuffer(data, registry);
Empty._()..mergeFromBuffer(data, registry);
factory Empty.fromJson($core.String json,
[$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) =>
create()..mergeFromJson(json, registry);
Empty._()..mergeFromJson(json, registry);

static final $pb.BuilderInfo _i = $pb.BuilderInfo(
_omitMessageNames ? '' : 'Empty',
Expand All @@ -52,9 +52,9 @@ class Empty extends $pb.GeneratedMessage {
$pb.BuilderInfo get info_ => _i;

@$core.pragma('dart2js:noInline')
static Empty create() => Empty._();
static $pb.GeneratedMessage create() => Empty._();
@$core.override
Empty createEmptyInstance() => create();
Empty createEmptyInstance() => Empty._();
@$core.pragma('dart2js:noInline')
static Empty getDefault() =>
_defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Empty>(create);
Expand Down
Loading
Loading