[pkg:vm_service] fix some analysis errors in the generated vm_service library
Change-Id: I5a09116928e2eff9125ca8033458e485e7f15acb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113756
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
diff --git a/pkg/vm_service/example/vm_service_assert.dart b/pkg/vm_service/example/vm_service_assert.dart
index 8010e63..df11b53 100644
--- a/pkg/vm_service/example/vm_service_assert.dart
+++ b/pkg/vm_service/example/vm_service_assert.dart
@@ -28,14 +28,14 @@
return obj;
}
-List<int> assertInts(List<int> list) {
+List<int> assertListOfInt(List<int> list) {
for (int elem in list) {
assertInt(elem);
}
return list;
}
-List<String> assertStrings(List<String> list) {
+List<String> assertListOfString(List<String> list) {
for (String elem in list) {
assertString(elem);
}
@@ -236,7 +236,7 @@
vms.AllocationProfile assertAllocationProfile(vms.AllocationProfile obj) {
assertNotNull(obj);
assertString(obj.type);
- assertClassHeapStatss(obj.members);
+ assertListOfClassHeapStats(obj.members);
assertMemoryUsage(obj.memoryUsage);
return obj;
}
@@ -273,7 +273,8 @@
return obj;
}
-List<vms.BoundVariable> assertBoundVariables(List<vms.BoundVariable> list) {
+List<vms.BoundVariable> assertListOfBoundVariable(
+ List<vms.BoundVariable> list) {
for (vms.BoundVariable elem in list) {
assertBoundVariable(elem);
}
@@ -296,7 +297,7 @@
return obj;
}
-List<vms.Breakpoint> assertBreakpoints(List<vms.Breakpoint> list) {
+List<vms.Breakpoint> assertListOfBreakpoint(List<vms.Breakpoint> list) {
for (vms.Breakpoint elem in list) {
assertBreakpoint(elem);
}
@@ -311,7 +312,7 @@
return obj;
}
-List<vms.ClassRef> assertClassRefs(List<vms.ClassRef> list) {
+List<vms.ClassRef> assertListOfClassRef(List<vms.ClassRef> list) {
for (vms.ClassRef elem in list) {
assertClassRef(elem);
}
@@ -326,10 +327,10 @@
assertBool(obj.isAbstract);
assertBool(obj.isConst);
assertLibraryRef(obj.library);
- assertInstanceRefs(obj.interfaces);
- assertFieldRefs(obj.fields);
- assertFuncRefs(obj.functions);
- assertClassRefs(obj.subclasses);
+ assertListOfInstanceRef(obj.interfaces);
+ assertListOfFieldRef(obj.fields);
+ assertListOfFuncRef(obj.functions);
+ assertListOfClassRef(obj.subclasses);
return obj;
}
@@ -344,7 +345,8 @@
return obj;
}
-List<vms.ClassHeapStats> assertClassHeapStatss(List<vms.ClassHeapStats> list) {
+List<vms.ClassHeapStats> assertListOfClassHeapStats(
+ List<vms.ClassHeapStats> list) {
for (vms.ClassHeapStats elem in list) {
assertClassHeapStats(elem);
}
@@ -354,7 +356,7 @@
vms.ClassList assertClassList(vms.ClassList obj) {
assertNotNull(obj);
assertString(obj.type);
- assertClassRefs(obj.classes);
+ assertListOfClassRef(obj.classes);
return obj;
}
@@ -367,7 +369,7 @@
return obj;
}
-List<vms.CodeRef> assertCodeRefs(List<vms.CodeRef> list) {
+List<vms.CodeRef> assertListOfCodeRef(List<vms.CodeRef> list) {
for (vms.CodeRef elem in list) {
assertCodeRef(elem);
}
@@ -391,7 +393,7 @@
return obj;
}
-List<vms.ContextRef> assertContextRefs(List<vms.ContextRef> list) {
+List<vms.ContextRef> assertListOfContextRef(List<vms.ContextRef> list) {
for (vms.ContextRef elem in list) {
assertContextRef(elem);
}
@@ -403,7 +405,7 @@
assertString(obj.type);
assertString(obj.id);
assertInt(obj.length);
- assertContextElements(obj.variables);
+ assertListOfContextElement(obj.variables);
return obj;
}
@@ -419,7 +421,8 @@
return obj;
}
-List<vms.ContextElement> assertContextElements(List<vms.ContextElement> list) {
+List<vms.ContextElement> assertListOfContextElement(
+ List<vms.ContextElement> list) {
for (vms.ContextElement elem in list) {
assertContextElement(elem);
}
@@ -435,7 +438,7 @@
return obj;
}
-List<vms.ErrorRef> assertErrorRefs(List<vms.ErrorRef> list) {
+List<vms.ErrorRef> assertListOfErrorRef(List<vms.ErrorRef> list) {
for (vms.ErrorRef elem in list) {
assertErrorRef(elem);
}
@@ -477,7 +480,7 @@
return obj;
}
-List<vms.FieldRef> assertFieldRefs(List<vms.FieldRef> list) {
+List<vms.FieldRef> assertListOfFieldRef(List<vms.FieldRef> list) {
for (vms.FieldRef elem in list) {
assertFieldRef(elem);
}
@@ -505,7 +508,7 @@
return obj;
}
-List<vms.Flag> assertFlags(List<vms.Flag> list) {
+List<vms.Flag> assertListOfFlag(List<vms.Flag> list) {
for (vms.Flag elem in list) {
assertFlag(elem);
}
@@ -515,7 +518,7 @@
vms.FlagList assertFlagList(vms.FlagList obj) {
assertNotNull(obj);
assertString(obj.type);
- assertFlags(obj.flags);
+ assertListOfFlag(obj.flags);
return obj;
}
@@ -526,7 +529,7 @@
return obj;
}
-List<vms.Frame> assertFrames(List<vms.Frame> list) {
+List<vms.Frame> assertListOfFrame(List<vms.Frame> list) {
for (vms.Frame elem in list) {
assertFrame(elem);
}
@@ -552,7 +555,7 @@
return obj;
}
-List<vms.FuncRef> assertFuncRefs(List<vms.FuncRef> list) {
+List<vms.FuncRef> assertListOfFuncRef(List<vms.FuncRef> list) {
for (vms.FuncRef elem in list) {
assertFuncRef(elem);
}
@@ -585,7 +588,7 @@
return obj;
}
-List<vms.InstanceRef> assertInstanceRefs(List<vms.InstanceRef> list) {
+List<vms.InstanceRef> assertListOfInstanceRef(List<vms.InstanceRef> list) {
for (vms.InstanceRef elem in list) {
assertInstanceRef(elem);
}
@@ -610,7 +613,7 @@
return obj;
}
-List<vms.IsolateRef> assertIsolateRefs(List<vms.IsolateRef> list) {
+List<vms.IsolateRef> assertListOfIsolateRef(List<vms.IsolateRef> list) {
for (vms.IsolateRef elem in list) {
assertIsolateRef(elem);
}
@@ -628,8 +631,8 @@
assertInt(obj.livePorts);
assertBool(obj.pauseOnExit);
assertEvent(obj.pauseEvent);
- assertLibraryRefs(obj.libraries);
- assertBreakpoints(obj.breakpoints);
+ assertListOfLibraryRef(obj.libraries);
+ assertListOfBreakpoint(obj.breakpoints);
assertExceptionPauseMode(obj.exceptionPauseMode);
return obj;
}
@@ -637,7 +640,7 @@
vms.InboundReferences assertInboundReferences(vms.InboundReferences obj) {
assertNotNull(obj);
assertString(obj.type);
- assertInboundReferences(obj.references);
+ assertListOfInboundReference(obj.references);
return obj;
}
@@ -647,11 +650,19 @@
return obj;
}
+List<vms.InboundReference> assertListOfInboundReference(
+ List<vms.InboundReference> list) {
+ for (vms.InboundReference elem in list) {
+ assertInboundReference(elem);
+ }
+ return list;
+}
+
vms.InstanceSet assertInstanceSet(vms.InstanceSet obj) {
assertNotNull(obj);
assertString(obj.type);
assertInt(obj.totalCount);
- assertObjRefs(obj.instances);
+ assertListOfObjRef(obj.instances);
return obj;
}
@@ -664,7 +675,7 @@
return obj;
}
-List<vms.LibraryRef> assertLibraryRefs(List<vms.LibraryRef> list) {
+List<vms.LibraryRef> assertListOfLibraryRef(List<vms.LibraryRef> list) {
for (vms.LibraryRef elem in list) {
assertLibraryRef(elem);
}
@@ -678,11 +689,11 @@
assertString(obj.name);
assertString(obj.uri);
assertBool(obj.debuggable);
- assertLibraryDependencies(obj.dependencies);
- assertScriptRefs(obj.scripts);
- assertFieldRefs(obj.variables);
- assertFuncRefs(obj.functions);
- assertClassRefs(obj.classes);
+ assertListOfLibraryDependency(obj.dependencies);
+ assertListOfScriptRef(obj.scripts);
+ assertListOfFieldRef(obj.variables);
+ assertListOfFuncRef(obj.functions);
+ assertListOfClassRef(obj.classes);
return obj;
}
@@ -695,7 +706,7 @@
return obj;
}
-List<vms.LibraryDependency> assertLibraryDependencies(
+List<vms.LibraryDependency> assertListOfLibraryDependency(
List<vms.LibraryDependency> list) {
for (vms.LibraryDependency elem in list) {
assertLibraryDependency(elem);
@@ -755,7 +766,7 @@
return obj;
}
-List<vms.Message> assertMessages(List<vms.Message> list) {
+List<vms.Message> assertListOfMessage(List<vms.Message> list) {
for (vms.Message elem in list) {
assertMessage(elem);
}
@@ -772,7 +783,7 @@
return obj;
}
-List<vms.NullValRef> assertNullValRefs(List<vms.NullValRef> list) {
+List<vms.NullValRef> assertListOfNullValRef(List<vms.NullValRef> list) {
for (vms.NullValRef elem in list) {
assertNullValRef(elem);
}
@@ -796,7 +807,7 @@
return obj;
}
-List<vms.ObjRef> assertObjRefs(List<vms.ObjRef> list) {
+List<vms.ObjRef> assertListOfObjRef(List<vms.ObjRef> list) {
for (vms.ObjRef elem in list) {
assertObjRef(elem);
}
@@ -823,12 +834,20 @@
return obj;
}
+List<vms.RetainingObject> assertListOfRetainingObject(
+ List<vms.RetainingObject> list) {
+ for (vms.RetainingObject elem in list) {
+ assertRetainingObject(elem);
+ }
+ return list;
+}
+
vms.RetainingPath assertRetainingPath(vms.RetainingPath obj) {
assertNotNull(obj);
assertString(obj.type);
assertInt(obj.length);
assertString(obj.gcRootType);
- assertRetainingObjects(obj.elements);
+ assertListOfRetainingObject(obj.elements);
return obj;
}
@@ -854,7 +873,7 @@
return obj;
}
-List<vms.ScriptRef> assertScriptRefs(List<vms.ScriptRef> list) {
+List<vms.ScriptRef> assertListOfScriptRef(List<vms.ScriptRef> list) {
for (vms.ScriptRef elem in list) {
assertScriptRef(elem);
}
@@ -873,7 +892,7 @@
vms.ScriptList assertScriptList(vms.ScriptList obj) {
assertNotNull(obj);
assertString(obj.type);
- assertScriptRefs(obj.scripts);
+ assertListOfScriptRef(obj.scripts);
return obj;
}
@@ -888,16 +907,16 @@
vms.SourceReport assertSourceReport(vms.SourceReport obj) {
assertNotNull(obj);
assertString(obj.type);
- assertSourceReportRanges(obj.ranges);
- assertScriptRefs(obj.scripts);
+ assertListOfSourceReportRange(obj.ranges);
+ assertListOfScriptRef(obj.scripts);
return obj;
}
vms.SourceReportCoverage assertSourceReportCoverage(
vms.SourceReportCoverage obj) {
assertNotNull(obj);
- assertInts(obj.hits);
- assertInts(obj.misses);
+ assertListOfInt(obj.hits);
+ assertListOfInt(obj.misses);
return obj;
}
@@ -910,7 +929,7 @@
return obj;
}
-List<vms.SourceReportRange> assertSourceReportRanges(
+List<vms.SourceReportRange> assertListOfSourceReportRange(
List<vms.SourceReportRange> list) {
for (vms.SourceReportRange elem in list) {
assertSourceReportRange(elem);
@@ -921,15 +940,15 @@
vms.Stack assertStack(vms.Stack obj) {
assertNotNull(obj);
assertString(obj.type);
- assertFrames(obj.frames);
- assertMessages(obj.messages);
+ assertListOfFrame(obj.frames);
+ assertListOfMessage(obj.messages);
return obj;
}
vms.Timeline assertTimeline(vms.Timeline obj) {
assertNotNull(obj);
assertString(obj.type);
- assertTimelineEvents(obj.traceEvents);
+ assertListOfTimelineEvent(obj.traceEvents);
assertInt(obj.timeOriginMicros);
assertInt(obj.timeExtentMicros);
return obj;
@@ -940,7 +959,8 @@
return obj;
}
-List<vms.TimelineEvent> assertTimelineEvents(List<vms.TimelineEvent> list) {
+List<vms.TimelineEvent> assertListOfTimelineEvent(
+ List<vms.TimelineEvent> list) {
for (vms.TimelineEvent elem in list) {
assertTimelineEvent(elem);
}
@@ -951,8 +971,8 @@
assertNotNull(obj);
assertString(obj.type);
assertString(obj.recorderName);
- assertStrings(obj.availableStreams);
- assertStrings(obj.recordedStreams);
+ assertListOfString(obj.availableStreams);
+ assertListOfString(obj.recordedStreams);
return obj;
}
@@ -971,7 +991,7 @@
return obj;
}
-List<vms.TypeArgumentsRef> assertTypeArgumentsRefs(
+List<vms.TypeArgumentsRef> assertListOfTypeArgumentsRef(
List<vms.TypeArgumentsRef> list) {
for (vms.TypeArgumentsRef elem in list) {
assertTypeArgumentsRef(elem);
@@ -984,7 +1004,7 @@
assertString(obj.type);
assertString(obj.id);
assertString(obj.name);
- assertInstanceRefs(obj.types);
+ assertListOfInstanceRef(obj.types);
return obj;
}
@@ -1010,7 +1030,7 @@
return obj;
}
-List<vms.VMRef> assertVMRefs(List<vms.VMRef> list) {
+List<vms.VMRef> assertListOfVMRef(List<vms.VMRef> list) {
for (vms.VMRef elem in list) {
assertVMRef(elem);
}
@@ -1028,6 +1048,6 @@
assertString(obj.version);
assertInt(obj.pid);
assertInt(obj.startTime);
- assertIsolateRefs(obj.isolates);
+ assertListOfIsolateRef(obj.isolates);
return obj;
}
diff --git a/pkg/vm_service/tool/dart/generate_dart.dart b/pkg/vm_service/tool/dart/generate_dart.dart
index 04e8b59..244f517 100644
--- a/pkg/vm_service/tool/dart/generate_dart.dart
+++ b/pkg/vm_service/tool/dart/generate_dart.dart
@@ -811,14 +811,14 @@
return obj;
}
-List<int> assertInts(List<int> list) {
+List<int> assertListOfInt(List<int> list) {
for (int elem in list) {
assertInt(elem);
}
return list;
}
-List<String> assertStrings(List<String> list) {
+List<String> assertListOfString(List<String> list) {
for (String elem in list) {
assertString(elem);
}
@@ -902,15 +902,17 @@
[
'BoundVariable',
'Breakpoint',
+ 'ClassHeapStats',
+ 'CodeRegion',
'ContextElement',
'Flag',
'Frame',
+ 'InboundReference',
'LibraryDependency',
'Message',
- 'SourceReportRange',
- 'ClassHeapStats',
- 'CodeRegion',
'ProfileFunction',
+ 'RetainingObject',
+ 'SourceReportRange',
'TimelineEvent',
].contains(type.name)) {
type.generateListAssert(gen);
@@ -1187,10 +1189,6 @@
name == 'bool' ||
name == 'double');
- String get namePlural => name.endsWith('y')
- ? name.substring(0, name.length - 1) + 'ies'
- : name + 's';
-
String toString() => ref;
}
@@ -1207,6 +1205,8 @@
void generate(DartGenerator gen) {
gen.write('${type.ref} ${name}');
}
+
+ String toString() => '$type $name';
}
class Type extends Member {
@@ -1251,10 +1251,6 @@
bool get isRef => name.endsWith('Ref');
- String get namePlural => name.endsWith('y')
- ? name.substring(0, name.length - 1) + 'ies'
- : name + 's';
-
bool get supportsIdentity {
if (fields.any((f) => f.name == 'id')) return true;
return superName == null ? false : getSuper().supportsIdentity;
@@ -1535,9 +1531,9 @@
if (type.isArray) {
TypeRef arrayType = type.types.first;
if (arrayType.arrayDepth == 1) {
- String assertMethodName = 'assert' +
+ String assertMethodName = 'assertListOf' +
arrayType.name.substring(0, 1).toUpperCase() +
- arrayType.namePlural.substring(1);
+ arrayType.name.substring(1);
gen.writeln('$assertMethodName(obj.${field.generatableName});');
} else {
gen.writeln(
@@ -1574,7 +1570,7 @@
void generateListAssert(DartGenerator gen) {
gen.writeln('List<vms.${name}> '
- 'assert${namePlural}(List<vms.${name}> list) {');
+ 'assertListOf${name}(List<vms.${name}> list) {');
gen.writeln('for (vms.${name} elem in list) {');
gen.writeln('assert${name}(elem);');
gen.writeln('}');
diff --git a/pkg/vm_service/tool/generate.dart b/pkg/vm_service/tool/generate.dart
index 151814f..73e8d2e 100644
--- a/pkg/vm_service/tool/generate.dart
+++ b/pkg/vm_service/tool/generate.dart
@@ -46,7 +46,11 @@
dart.api.parse(nodes);
dart.api.generate(generator);
outputFile.writeAsStringSync(generator.toString());
- Process.runSync('dartfmt', ['-w', outDirPath]);
+ ProcessResult result = Process.runSync('dartfmt', ['-w', outDirPath]);
+ if (result.exitCode != 0) {
+ print('dartfmt: ${result.stdout}\n${result.stderr}');
+ throw result.exitCode;
+ }
if (_stampPubspecVersion) {
// Update the pubspec file.
@@ -99,7 +103,11 @@
dart.api.parse(nodes);
dart.api.generateAsserts(generator);
outputFile.writeAsStringSync(generator.toString());
- Process.runSync('dartfmt', ['-w', outDirPath]);
+ ProcessResult result = Process.runSync('dartfmt', ['-w', outDirPath]);
+ if (result.exitCode != 0) {
+ print('dartfmt: ${result.stdout}\n${result.stderr}');
+ throw result.exitCode;
+ }
if (_stampPubspecVersion) {
// Update the pubspec file.