| Index: pkg/analyzer/lib/src/summary/format.dart
|
| diff --git a/pkg/analyzer/lib/src/summary/format.dart b/pkg/analyzer/lib/src/summary/format.dart
|
| index d24aa70ebeb135f55d9ab6f67784ff98ce6a3660..85ac30ae6aebe9367a67cdc5228d1823df31aa92 100644
|
| --- a/pkg/analyzer/lib/src/summary/format.dart
|
| +++ b/pkg/analyzer/lib/src/summary/format.dart
|
| @@ -129,6 +129,296 @@ class _UnlinkedParamKindReader extends fb.Reader<idl.UnlinkedParamKind> {
|
| }
|
| }
|
|
|
| +class AnalysisDriverResolvedUnitBuilder extends Object with _AnalysisDriverResolvedUnitMixin implements idl.AnalysisDriverResolvedUnit {
|
| + List<AnalysisDriverUnitErrorBuilder> _errors;
|
| +
|
| + @override
|
| + List<AnalysisDriverUnitErrorBuilder> get errors => _errors ??= <AnalysisDriverUnitErrorBuilder>[];
|
| +
|
| + /**
|
| + * The full list of analysis errors, both syntactic and semantic.
|
| + */
|
| + void set errors(List<AnalysisDriverUnitErrorBuilder> value) {
|
| + this._errors = value;
|
| + }
|
| +
|
| + AnalysisDriverResolvedUnitBuilder({List<AnalysisDriverUnitErrorBuilder> errors})
|
| + : _errors = errors;
|
| +
|
| + /**
|
| + * Flush [informative] data recursively.
|
| + */
|
| + void flushInformative() {
|
| + _errors?.forEach((b) => b.flushInformative());
|
| + }
|
| +
|
| + /**
|
| + * Accumulate non-[informative] data into [signature].
|
| + */
|
| + void collectApiSignature(api_sig.ApiSignature signature) {
|
| + if (this._errors == null) {
|
| + signature.addInt(0);
|
| + } else {
|
| + signature.addInt(this._errors.length);
|
| + for (var x in this._errors) {
|
| + x?.collectApiSignature(signature);
|
| + }
|
| + }
|
| + }
|
| +
|
| + List<int> toBuffer() {
|
| + fb.Builder fbBuilder = new fb.Builder();
|
| + return fbBuilder.finish(finish(fbBuilder), "ADRU");
|
| + }
|
| +
|
| + fb.Offset finish(fb.Builder fbBuilder) {
|
| + fb.Offset offset_errors;
|
| + if (!(_errors == null || _errors.isEmpty)) {
|
| + offset_errors = fbBuilder.writeList(_errors.map((b) => b.finish(fbBuilder)).toList());
|
| + }
|
| + fbBuilder.startTable();
|
| + if (offset_errors != null) {
|
| + fbBuilder.addOffset(0, offset_errors);
|
| + }
|
| + return fbBuilder.endTable();
|
| + }
|
| +}
|
| +
|
| +idl.AnalysisDriverResolvedUnit readAnalysisDriverResolvedUnit(List<int> buffer) {
|
| + fb.BufferContext rootRef = new fb.BufferContext.fromBytes(buffer);
|
| + return const _AnalysisDriverResolvedUnitReader().read(rootRef, 0);
|
| +}
|
| +
|
| +class _AnalysisDriverResolvedUnitReader extends fb.TableReader<_AnalysisDriverResolvedUnitImpl> {
|
| + const _AnalysisDriverResolvedUnitReader();
|
| +
|
| + @override
|
| + _AnalysisDriverResolvedUnitImpl createObject(fb.BufferContext bc, int offset) => new _AnalysisDriverResolvedUnitImpl(bc, offset);
|
| +}
|
| +
|
| +class _AnalysisDriverResolvedUnitImpl extends Object with _AnalysisDriverResolvedUnitMixin implements idl.AnalysisDriverResolvedUnit {
|
| + final fb.BufferContext _bc;
|
| + final int _bcOffset;
|
| +
|
| + _AnalysisDriverResolvedUnitImpl(this._bc, this._bcOffset);
|
| +
|
| + List<idl.AnalysisDriverUnitError> _errors;
|
| +
|
| + @override
|
| + List<idl.AnalysisDriverUnitError> get errors {
|
| + _errors ??= const fb.ListReader<idl.AnalysisDriverUnitError>(const _AnalysisDriverUnitErrorReader()).vTableGet(_bc, _bcOffset, 0, const <idl.AnalysisDriverUnitError>[]);
|
| + return _errors;
|
| + }
|
| +}
|
| +
|
| +abstract class _AnalysisDriverResolvedUnitMixin implements idl.AnalysisDriverResolvedUnit {
|
| + @override
|
| + Map<String, Object> toJson() {
|
| + Map<String, Object> _result = <String, Object>{};
|
| + if (errors.isNotEmpty) _result["errors"] = errors.map((_value) => _value.toJson()).toList();
|
| + return _result;
|
| + }
|
| +
|
| + @override
|
| + Map<String, Object> toMap() => {
|
| + "errors": errors,
|
| + };
|
| +
|
| + @override
|
| + String toString() => convert.JSON.encode(toJson());
|
| +}
|
| +
|
| +class AnalysisDriverUnitErrorBuilder extends Object with _AnalysisDriverUnitErrorMixin implements idl.AnalysisDriverUnitError {
|
| + String _correction;
|
| + int _length;
|
| + String _message;
|
| + int _offset;
|
| + String _uniqueName;
|
| +
|
| + @override
|
| + String get correction => _correction ??= '';
|
| +
|
| + /**
|
| + * The optional correction hint for the error.
|
| + */
|
| + void set correction(String value) {
|
| + this._correction = value;
|
| + }
|
| +
|
| + @override
|
| + int get length => _length ??= 0;
|
| +
|
| + /**
|
| + * The length of the error in the file.
|
| + */
|
| + void set length(int value) {
|
| + assert(value == null || value >= 0);
|
| + this._length = value;
|
| + }
|
| +
|
| + @override
|
| + String get message => _message ??= '';
|
| +
|
| + /**
|
| + * The message of the error.
|
| + */
|
| + void set message(String value) {
|
| + this._message = value;
|
| + }
|
| +
|
| + @override
|
| + int get offset => _offset ??= 0;
|
| +
|
| + /**
|
| + * The offset from the beginning of the file.
|
| + */
|
| + void set offset(int value) {
|
| + assert(value == null || value >= 0);
|
| + this._offset = value;
|
| + }
|
| +
|
| + @override
|
| + String get uniqueName => _uniqueName ??= '';
|
| +
|
| + /**
|
| + * The unique name of the error code.
|
| + */
|
| + void set uniqueName(String value) {
|
| + this._uniqueName = value;
|
| + }
|
| +
|
| + AnalysisDriverUnitErrorBuilder({String correction, int length, String message, int offset, String uniqueName})
|
| + : _correction = correction,
|
| + _length = length,
|
| + _message = message,
|
| + _offset = offset,
|
| + _uniqueName = uniqueName;
|
| +
|
| + /**
|
| + * Flush [informative] data recursively.
|
| + */
|
| + void flushInformative() {
|
| + }
|
| +
|
| + /**
|
| + * Accumulate non-[informative] data into [signature].
|
| + */
|
| + void collectApiSignature(api_sig.ApiSignature signature) {
|
| + signature.addInt(this._offset ?? 0);
|
| + signature.addInt(this._length ?? 0);
|
| + signature.addString(this._uniqueName ?? '');
|
| + signature.addString(this._message ?? '');
|
| + signature.addString(this._correction ?? '');
|
| + }
|
| +
|
| + fb.Offset finish(fb.Builder fbBuilder) {
|
| + fb.Offset offset_correction;
|
| + fb.Offset offset_message;
|
| + fb.Offset offset_uniqueName;
|
| + if (_correction != null) {
|
| + offset_correction = fbBuilder.writeString(_correction);
|
| + }
|
| + if (_message != null) {
|
| + offset_message = fbBuilder.writeString(_message);
|
| + }
|
| + if (_uniqueName != null) {
|
| + offset_uniqueName = fbBuilder.writeString(_uniqueName);
|
| + }
|
| + fbBuilder.startTable();
|
| + if (offset_correction != null) {
|
| + fbBuilder.addOffset(4, offset_correction);
|
| + }
|
| + if (_length != null && _length != 0) {
|
| + fbBuilder.addUint32(1, _length);
|
| + }
|
| + if (offset_message != null) {
|
| + fbBuilder.addOffset(3, offset_message);
|
| + }
|
| + if (_offset != null && _offset != 0) {
|
| + fbBuilder.addUint32(0, _offset);
|
| + }
|
| + if (offset_uniqueName != null) {
|
| + fbBuilder.addOffset(2, offset_uniqueName);
|
| + }
|
| + return fbBuilder.endTable();
|
| + }
|
| +}
|
| +
|
| +class _AnalysisDriverUnitErrorReader extends fb.TableReader<_AnalysisDriverUnitErrorImpl> {
|
| + const _AnalysisDriverUnitErrorReader();
|
| +
|
| + @override
|
| + _AnalysisDriverUnitErrorImpl createObject(fb.BufferContext bc, int offset) => new _AnalysisDriverUnitErrorImpl(bc, offset);
|
| +}
|
| +
|
| +class _AnalysisDriverUnitErrorImpl extends Object with _AnalysisDriverUnitErrorMixin implements idl.AnalysisDriverUnitError {
|
| + final fb.BufferContext _bc;
|
| + final int _bcOffset;
|
| +
|
| + _AnalysisDriverUnitErrorImpl(this._bc, this._bcOffset);
|
| +
|
| + String _correction;
|
| + int _length;
|
| + String _message;
|
| + int _offset;
|
| + String _uniqueName;
|
| +
|
| + @override
|
| + String get correction {
|
| + _correction ??= const fb.StringReader().vTableGet(_bc, _bcOffset, 4, '');
|
| + return _correction;
|
| + }
|
| +
|
| + @override
|
| + int get length {
|
| + _length ??= const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 1, 0);
|
| + return _length;
|
| + }
|
| +
|
| + @override
|
| + String get message {
|
| + _message ??= const fb.StringReader().vTableGet(_bc, _bcOffset, 3, '');
|
| + return _message;
|
| + }
|
| +
|
| + @override
|
| + int get offset {
|
| + _offset ??= const fb.Uint32Reader().vTableGet(_bc, _bcOffset, 0, 0);
|
| + return _offset;
|
| + }
|
| +
|
| + @override
|
| + String get uniqueName {
|
| + _uniqueName ??= const fb.StringReader().vTableGet(_bc, _bcOffset, 2, '');
|
| + return _uniqueName;
|
| + }
|
| +}
|
| +
|
| +abstract class _AnalysisDriverUnitErrorMixin implements idl.AnalysisDriverUnitError {
|
| + @override
|
| + Map<String, Object> toJson() {
|
| + Map<String, Object> _result = <String, Object>{};
|
| + if (correction != '') _result["correction"] = correction;
|
| + if (length != 0) _result["length"] = length;
|
| + if (message != '') _result["message"] = message;
|
| + if (offset != 0) _result["offset"] = offset;
|
| + if (uniqueName != '') _result["uniqueName"] = uniqueName;
|
| + return _result;
|
| + }
|
| +
|
| + @override
|
| + Map<String, Object> toMap() => {
|
| + "correction": correction,
|
| + "length": length,
|
| + "message": message,
|
| + "offset": offset,
|
| + "uniqueName": uniqueName,
|
| + };
|
| +
|
| + @override
|
| + String toString() => convert.JSON.encode(toJson());
|
| +}
|
| +
|
| class CodeRangeBuilder extends Object with _CodeRangeMixin implements idl.CodeRange {
|
| int _length;
|
| int _offset;
|
|
|