[dartdoc] Updating dart reference docs
diff --git a/all/dart/_toc.yaml b/all/dart/_toc.yaml
index e174815..137ce6d 100644
--- a/all/dart/_toc.yaml
+++ b/all/dart/_toc.yaml
@@ -274,6 +274,8 @@
path: /reference/dart/package-fidl_fidl/Decoder/claimHandle.md
- title: claimMemory
path: /reference/dart/package-fidl_fidl/Decoder/claimMemory.md
+ - title: claimMemoryComplete
+ path: /reference/dart/package-fidl_fidl/Decoder/claimMemoryComplete.md
- title: countClaimedHandles
path: /reference/dart/package-fidl_fidl/Decoder/countClaimedHandles.md
- title: countUnclaimedHandles
@@ -315,6 +317,8 @@
path: /reference/dart/package-fidl_fidl/Decoder/handles.md
- title: hashCode
path: /reference/dart/package-fidl_fidl/Decoder/hashCode.md
+ - title: nextOutOfLineDepth
+ path: /reference/dart/package-fidl_fidl/Decoder/nextOutOfLineDepth.md
- title: runtimeType
path: /reference/dart/package-fidl_fidl/Decoder/runtimeType.md
- title: Encoder
@@ -328,6 +332,8 @@
path: /reference/dart/package-fidl_fidl/Encoder/addHandle.md
- title: alloc
path: /reference/dart/package-fidl_fidl/Encoder/alloc.md
+ - title: allocComplete
+ path: /reference/dart/package-fidl_fidl/Encoder/allocComplete.md
- title: countHandles
path: /reference/dart/package-fidl_fidl/Encoder/countHandles.md
- title: encodeBool
@@ -369,6 +375,8 @@
path: /reference/dart/package-fidl_fidl/Encoder/hashCode.md
- title: message
path: /reference/dart/package-fidl_fidl/Encoder/message.md
+ - title: nextOutOfLineDepth
+ path: /reference/dart/package-fidl_fidl/Encoder/nextOutOfLineDepth.md
- title: runtimeType
path: /reference/dart/package-fidl_fidl/Encoder/runtimeType.md
- title: Enum
@@ -1461,6 +1469,10 @@
path: /reference/dart/package-fidl_fidl/decodeMessage.md
- title: decodeMessageWithCallback
path: /reference/dart/package-fidl_fidl/decodeMessageWithCallback.md
+ - title: encodeMessage
+ path: /reference/dart/package-fidl_fidl/encodeMessage.md
+ - title: encodeMessageWithCallback
+ path: /reference/dart/package-fidl_fidl/encodeMessageWithCallback.md
- heading: Top-level Constants
- title: epitaphOrdinal
path: /reference/dart/package-fidl_fidl/epitaphOrdinal-constant.md
diff --git a/all/dart/package-fidl_fidl/Decoder-class.md b/all/dart/package-fidl_fidl/Decoder-class.md
index 5207568..d8fd1d3 100644
--- a/all/dart/package-fidl_fidl/Decoder-class.md
+++ b/all/dart/package-fidl_fidl/Decoder-class.md
@@ -35,6 +35,11 @@
The hash code for this object. [...](../package-fidl_fidl/Decoder/hashCode.md)
_read-only, inherited_
+##### [nextOutOfLineDepth](../package-fidl_fidl/Decoder/nextOutOfLineDepth.md) → int
+
+
+_read-only_
+
##### [runtimeType](../package-fidl_fidl/Decoder/runtimeType.md) → Type
A representation of the runtime type of the object.
@@ -53,6 +58,12 @@
+##### [claimMemoryComplete](../package-fidl_fidl/Decoder/claimMemoryComplete.md)() void
+
+This method should be invoked as soon as the out-of-line object defined by
+a call to the claimMemory() method has been fully read.
+
+
##### [countClaimedHandles](../package-fidl_fidl/Decoder/countClaimedHandles.md)() int
diff --git a/all/dart/package-fidl_fidl/Decoder/claimMemory.md b/all/dart/package-fidl_fidl/Decoder/claimMemory.md
index 8778a51..3c7091c 100644
--- a/all/dart/package-fidl_fidl/Decoder/claimMemory.md
+++ b/all/dart/package-fidl_fidl/Decoder/claimMemory.md
@@ -13,6 +13,11 @@
```dart
int claimMemory(int size) {
+ if (_nextOutOfLineDepth > _maxOutOfLineDepth) {
+ throw FidlError('Exceeded maxOutOfLineDepth',
+ FidlErrorCode.fidlExceededMaxOutOfLineDepth);
+ }
+ _nextOutOfLineDepth++;
final int result = _nextOffset;
_nextOffset += _align(size);
if (_nextOffset > data.lengthInBytes) {
diff --git a/all/dart/package-fidl_fidl/Decoder/claimMemoryComplete.md b/all/dart/package-fidl_fidl/Decoder/claimMemoryComplete.md
new file mode 100644
index 0000000..a95a202
--- /dev/null
+++ b/all/dart/package-fidl_fidl/Decoder/claimMemoryComplete.md
@@ -0,0 +1,22 @@
+
+# claimMemoryComplete method
+
+ *<Null safety>*
+
+
+void claimMemoryComplete
+()
+
+
+<p>This method should be invoked as soon as the out-of-line object defined by
+a call to the claimMemory() method has been fully read.</p>
+
+## Implementation
+
+```dart
+void claimMemoryComplete() {
+ _nextOutOfLineDepth--;
+}
+```
+
+
diff --git a/all/dart/package-fidl_fidl/Decoder/nextOutOfLineDepth.md b/all/dart/package-fidl_fidl/Decoder/nextOutOfLineDepth.md
new file mode 100644
index 0000000..c39d4cb
--- /dev/null
+++ b/all/dart/package-fidl_fidl/Decoder/nextOutOfLineDepth.md
@@ -0,0 +1,18 @@
+
+# nextOutOfLineDepth property
+
+ *<Null safety>*
+
+
+int nextOutOfLineDepth
+
+
+
+
+## Implementation
+
+```dart
+int get nextOutOfLineDepth => _nextOutOfLineDepth;
+```
+
+
diff --git a/all/dart/package-fidl_fidl/Encoder-class.md b/all/dart/package-fidl_fidl/Encoder-class.md
index 04c73c3..45106cf 100644
--- a/all/dart/package-fidl_fidl/Encoder-class.md
+++ b/all/dart/package-fidl_fidl/Encoder-class.md
@@ -30,6 +30,11 @@
_read-only_
+##### [nextOutOfLineDepth](../package-fidl_fidl/Encoder/nextOutOfLineDepth.md) → int
+
+
+_read-only_
+
##### [runtimeType](../package-fidl_fidl/Encoder/runtimeType.md) → Type
A representation of the runtime type of the object.
@@ -48,6 +53,12 @@
+##### [allocComplete](../package-fidl_fidl/Encoder/allocComplete.md)() void
+
+This method should be invoked as soon as the out-of-line object created by
+a call to the alloc() method has been fully written.
+
+
##### [countHandles](../package-fidl_fidl/Encoder/countHandles.md)() int
diff --git a/all/dart/package-fidl_fidl/Encoder/alloc.md b/all/dart/package-fidl_fidl/Encoder/alloc.md
index fb6b0c7..2ef7d9e 100644
--- a/all/dart/package-fidl_fidl/Encoder/alloc.md
+++ b/all/dart/package-fidl_fidl/Encoder/alloc.md
@@ -13,6 +13,11 @@
```dart
int alloc(int size) {
+ if (_nextOutOfLineDepth > _maxOutOfLineDepth) {
+ throw FidlError('Exceeded maxOutOfLineDepth',
+ FidlErrorCode.fidlExceededMaxOutOfLineDepth);
+ }
+ _nextOutOfLineDepth++;
int offset = _extent;
_claimMemory(_align(size));
return offset;
diff --git a/all/dart/package-fidl_fidl/Encoder/allocComplete.md b/all/dart/package-fidl_fidl/Encoder/allocComplete.md
new file mode 100644
index 0000000..5239ef6
--- /dev/null
+++ b/all/dart/package-fidl_fidl/Encoder/allocComplete.md
@@ -0,0 +1,22 @@
+
+# allocComplete method
+
+ *<Null safety>*
+
+
+void allocComplete
+()
+
+
+<p>This method should be invoked as soon as the out-of-line object created by
+a call to the alloc() method has been fully written.</p>
+
+## Implementation
+
+```dart
+void allocComplete() {
+ _nextOutOfLineDepth--;
+}
+```
+
+
diff --git a/all/dart/package-fidl_fidl/Encoder/encodeMessageHeader.md b/all/dart/package-fidl_fidl/Encoder/encodeMessageHeader.md
index 286feb0..4d8d28d 100644
--- a/all/dart/package-fidl_fidl/Encoder/encodeMessageHeader.md
+++ b/all/dart/package-fidl_fidl/Encoder/encodeMessageHeader.md
@@ -20,6 +20,7 @@
encodeUint8(0, kMessageFlagOffset + 2);
encodeUint8(kMagicNumberInitial, kMessageMagicOffset);
encodeUint64(ordinal, kMessageOrdinalOffset);
+ allocComplete();
}
```
diff --git a/all/dart/package-fidl_fidl/Encoder/nextOutOfLineDepth.md b/all/dart/package-fidl_fidl/Encoder/nextOutOfLineDepth.md
new file mode 100644
index 0000000..c39d4cb
--- /dev/null
+++ b/all/dart/package-fidl_fidl/Encoder/nextOutOfLineDepth.md
@@ -0,0 +1,18 @@
+
+# nextOutOfLineDepth property
+
+ *<Null safety>*
+
+
+int nextOutOfLineDepth
+
+
+
+
+## Implementation
+
+```dart
+int get nextOutOfLineDepth => _nextOutOfLineDepth;
+```
+
+
diff --git a/all/dart/package-fidl_fidl/FidlErrorCode-class.md b/all/dart/package-fidl_fidl/FidlErrorCode-class.md
index f99bb3d..ffa18ed 100644
--- a/all/dart/package-fidl_fidl/FidlErrorCode-class.md
+++ b/all/dart/package-fidl_fidl/FidlErrorCode-class.md
@@ -7,6 +7,11 @@
## Constants
+##### fidlExceededMaxOutOfLineDepth const [FidlErrorCode](../package-fidl_fidl/FidlErrorCode-class.md)
+
+
+
+
##### fidlIntOutOfRange const [FidlErrorCode](../package-fidl_fidl/FidlErrorCode-class.md)
diff --git a/all/dart/package-fidl_fidl/PointerType/decode.md b/all/dart/package-fidl_fidl/PointerType/decode.md
index 2731755..46dd064 100644
--- a/all/dart/package-fidl_fidl/PointerType/decode.md
+++ b/all/dart/package-fidl_fidl/PointerType/decode.md
@@ -20,8 +20,10 @@
if (data == kAllocAbsent) {
return null;
}
- return element.decode(
+ T? decoded = element.decode(
decoder, decoder.claimMemory(element.decodingInlineSize()));
+ decoder.claimMemoryComplete();
+ return decoded;
}
```
diff --git a/all/dart/package-fidl_fidl/PointerType/encode.md b/all/dart/package-fidl_fidl/PointerType/encode.md
index a4410cf..ffcfbac 100644
--- a/all/dart/package-fidl_fidl/PointerType/encode.md
+++ b/all/dart/package-fidl_fidl/PointerType/encode.md
@@ -21,6 +21,7 @@
encoder.encodeUint64(kAllocPresent, offset);
int childOffset = encoder.alloc(element.encodingInlineSize());
element.encode(encoder, value, childOffset);
+ encoder.allocComplete();
}
}
```
diff --git a/all/dart/package-fidl_fidl/TableType/decode.md b/all/dart/package-fidl_fidl/TableType/decode.md
index 76cad0e..6c29ef6 100644
--- a/all/dart/package-fidl_fidl/TableType/decode.md
+++ b/all/dart/package-fidl_fidl/TableType/decode.md
@@ -64,6 +64,7 @@
}
envelopeOffset += _kEnvelopeSize;
}
+ decoder.claimMemoryComplete();
return ctor(argv, unknownData);
}
diff --git a/all/dart/package-fidl_fidl/TableType/encode.md b/all/dart/package-fidl_fidl/TableType/encode.md
index cd9645c..c598445 100644
--- a/all/dart/package-fidl_fidl/TableType/encode.md
+++ b/all/dart/package-fidl_fidl/TableType/encode.md
@@ -67,6 +67,7 @@
}
envelopeOffset += _kEnvelopeSize;
}
+ encoder.allocComplete();
}
```
diff --git a/all/dart/package-fidl_fidl/decodeMessage.md b/all/dart/package-fidl_fidl/decodeMessage.md
index 7cab3d8..3c492f0 100644
--- a/all/dart/package-fidl_fidl/decodeMessage.md
+++ b/all/dart/package-fidl_fidl/decodeMessage.md
@@ -18,6 +18,7 @@
final Decoder decoder = Decoder(message)
..claimMemory(kMessageHeaderSize + inlineSize);
T decoded = typ.decode(decoder, kMessageHeaderSize);
+ decoder.claimMemoryComplete();
_validateDecoding(decoder);
return decoded;
}
diff --git a/all/dart/package-fidl_fidl/decodeMessageWithCallback.md b/all/dart/package-fidl_fidl/decodeMessageWithCallback.md
index 6da6110..5971867 100644
--- a/all/dart/package-fidl_fidl/decodeMessageWithCallback.md
+++ b/all/dart/package-fidl_fidl/decodeMessageWithCallback.md
@@ -20,6 +20,7 @@
final Decoder decoder = Decoder(message)
..claimMemory(kMessageHeaderSize + inlineSize);
A out = f(decoder);
+ decoder.claimMemoryComplete();
_validateDecoding(decoder);
return out;
}
diff --git a/all/dart/package-fidl_fidl/encodeMessage.md b/all/dart/package-fidl_fidl/encodeMessage.md
new file mode 100644
index 0000000..afc2f9a
--- /dev/null
+++ b/all/dart/package-fidl_fidl/encodeMessage.md
@@ -0,0 +1,23 @@
+
+# encodeMessage<T> function
+
+ *<Null safety>*
+
+
+void encodeMessage
+<T>([Encoder](../package-fidl_fidl/Encoder-class.md) encoder, int inlineSize, [MemberType](../package-fidl_fidl/MemberType-class.md) typ, T value)
+
+
+## Implementation
+
+```dart
+void encodeMessage<T>(
+ Encoder encoder, int inlineSize, MemberType typ, T value) {
+ encoder.alloc(inlineSize);
+ typ.encode(encoder, value, kMessageHeaderSize);
+ encoder.allocComplete();
+ _validateEncoding(encoder);
+}
+```
+
+
diff --git a/all/dart/package-fidl_fidl/encodeMessageWithCallback.md b/all/dart/package-fidl_fidl/encodeMessageWithCallback.md
new file mode 100644
index 0000000..40a7f58
--- /dev/null
+++ b/all/dart/package-fidl_fidl/encodeMessageWithCallback.md
@@ -0,0 +1,22 @@
+
+# encodeMessageWithCallback function
+
+ *<Null safety>*
+
+
+void encodeMessageWithCallback
+([Encoder](../package-fidl_fidl/Encoder-class.md) encoder, int inlineSize, dynamic f())
+
+
+## Implementation
+
+```dart
+void encodeMessageWithCallback(Encoder encoder, int inlineSize, Function() f) {
+ encoder.alloc(inlineSize);
+ f();
+ encoder.allocComplete();
+ _validateEncoding(encoder);
+}
+```
+
+
diff --git a/all/dart/package-fidl_fidl/package-fidl_fidl-library.md b/all/dart/package-fidl_fidl/package-fidl_fidl-library.md
index 421300f..2cb9784 100644
--- a/all/dart/package-fidl_fidl/package-fidl_fidl-library.md
+++ b/all/dart/package-fidl_fidl/package-fidl_fidl-library.md
@@ -349,6 +349,16 @@
parameter types into a single "Async___Class" inside the callback function.
+##### [encodeMessage](../package-fidl_fidl/encodeMessage.md)<T>([Encoder](../package-fidl_fidl/Encoder-class.md) encoder, int inlineSize, [MemberType](../package-fidl_fidl/MemberType-class.md) typ, T value) void
+
+
+
+
+##### [encodeMessageWithCallback](../package-fidl_fidl/encodeMessageWithCallback.md)([Encoder](../package-fidl_fidl/Encoder-class.md) encoder, int inlineSize, dynamic f()) void
+
+
+
+
## Enums