Chromium Code Reviews| 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) { |
|
Brian Wilkerson
2016/10/26 18:32:11
"fbBuilder" --> "builder"
scheglov
2016/10/26 18:48:41
This file is automatically generated.
|
| + 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) { |
|
Brian Wilkerson
2016/10/26 18:32:11
"fbBuilder" --> "builder"
|
| + 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; |