Bug 1689147 - Part 4: Switch nested and prio to extended attributes, r=mccr8

Differential Revision: https://phabricator.services.mozilla.com/D103369
This commit is contained in:
Nika Layzell 2021-02-09 16:50:22 +00:00
parent b40f9a3000
commit 661b4db5f0
25 changed files with 326 additions and 308 deletions

View File

@ -23,42 +23,42 @@ nested(upto inside_sync) sync protocol PDocAccessiblePlatformExt {
child:
async __delete__();
nested(inside_sync) sync RangeAt(uint64_t aID, int32_t aOffset, EWhichRange aRangeType)
[Nested=inside_sync] sync RangeAt(uint64_t aID, int32_t aOffset, EWhichRange aRangeType)
returns(uint64_t aStartContainer, int32_t aStartOffset,
uint64_t aEndContainer, int32_t aEndOffset);
nested(inside_sync) sync NextClusterAt(uint64_t aID, int32_t aOffset)
[Nested=inside_sync] sync NextClusterAt(uint64_t aID, int32_t aOffset)
returns(uint64_t aNextContainer, int32_t aNextOffset);
nested(inside_sync) sync PreviousClusterAt(uint64_t aID, int32_t aOffset)
[Nested=inside_sync] sync PreviousClusterAt(uint64_t aID, int32_t aOffset)
returns(uint64_t aNextContainer, int32_t aNextOffset);
nested(inside_sync) sync TextForRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset)
[Nested=inside_sync] sync TextForRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset)
returns(nsString aText);
nested(inside_sync) sync BoundsForRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset)
[Nested=inside_sync] sync BoundsForRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset)
returns(nsIntRect aRetVal);
nested(inside_sync) sync LengthForRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset)
[Nested=inside_sync] sync LengthForRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset)
returns(int32_t aLength);
nested(inside_sync) sync OffsetAtIndex(uint64_t aID, int32_t aIndex)
[Nested=inside_sync] sync OffsetAtIndex(uint64_t aID, int32_t aIndex)
returns(uint64_t aContainer, int32_t aOffset);
nested(inside_sync) sync RangeOfChild(uint64_t aID, uint64_t aChild)
[Nested=inside_sync] sync RangeOfChild(uint64_t aID, uint64_t aChild)
returns(int32_t aStartOffset, int32_t aEndOffset);
nested(inside_sync) sync LeafAtOffset(uint64_t aID, int32_t aOffset)
[Nested=inside_sync] sync LeafAtOffset(uint64_t aID, int32_t aOffset)
returns(uint64_t aLeaf);
nested(inside_sync) sync AttributedTextForRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset)
[Nested=inside_sync] sync AttributedTextForRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset)
returns(TextAttributesRun[] aAttributedText);
async SelectRange(uint64_t aID, int32_t aStartOffset, uint64_t aEndContainer, int32_t aEndOffset);
// A filter that can be applied to search predicate results.
nested(inside_sync) sync ApplyPostSearchFilter(uint64_t[] aAccessibles, int32_t aLimit,
EWhichPostFilter aSearchKey, nsString aSearchText)
[Nested=inside_sync] sync ApplyPostSearchFilter(uint64_t[] aAccessibles, int32_t aLimit,
EWhichPostFilter aSearchKey, nsString aSearchText)
returns(uint64_t[] aMatches);
};

View File

@ -135,20 +135,20 @@ child:
async RestoreFocus();
// Accessible
nested(inside_sync) sync State(uint64_t aID) returns(uint64_t states);
nested(inside_sync) sync NativeState(uint64_t aID) returns(uint64_t states);
nested(inside_sync) sync Name(uint64_t aID) returns(nsString name, uint32_t flag);
nested(inside_sync) sync Value(uint64_t aID) returns(nsString value);
nested(inside_sync) sync Help(uint64_t aID) returns(nsString help);
nested(inside_sync) sync Description(uint64_t aID) returns(nsString desc);
nested(inside_sync) sync Attributes(uint64_t aID) returns(Attribute[] attributes);
nested(inside_sync) sync RelationByType(uint64_t aID, uint32_t aRelationType)
[Nested=inside_sync] sync State(uint64_t aID) returns(uint64_t states);
[Nested=inside_sync] sync NativeState(uint64_t aID) returns(uint64_t states);
[Nested=inside_sync] sync Name(uint64_t aID) returns(nsString name, uint32_t flag);
[Nested=inside_sync] sync Value(uint64_t aID) returns(nsString value);
[Nested=inside_sync] sync Help(uint64_t aID) returns(nsString help);
[Nested=inside_sync] sync Description(uint64_t aID) returns(nsString desc);
[Nested=inside_sync] sync Attributes(uint64_t aID) returns(Attribute[] attributes);
[Nested=inside_sync] sync RelationByType(uint64_t aID, uint32_t aRelationType)
returns(uint64_t[] targets);
nested(inside_sync) sync Relations(uint64_t aID) returns(RelationTargets[] relations);
nested(inside_sync) sync IsSearchbox(uint64_t aID) returns(bool retval);
nested(inside_sync) sync LandmarkRole(uint64_t aID) returns(nsString landmark);
nested(inside_sync) sync ARIARoleAtom(uint64_t aID) returns(nsString ariaRole);
nested(inside_sync) sync GroupPosition(uint64_t aID)
[Nested=inside_sync] sync Relations(uint64_t aID) returns(RelationTargets[] relations);
[Nested=inside_sync] sync IsSearchbox(uint64_t aID) returns(bool retval);
[Nested=inside_sync] sync LandmarkRole(uint64_t aID) returns(nsString landmark);
[Nested=inside_sync] sync ARIARoleAtom(uint64_t aID) returns(nsString ariaRole);
[Nested=inside_sync] sync GroupPosition(uint64_t aID)
returns(int32_t groupLevel, int32_t similarItemsInGroup, int32_t positionInGroup);
async ScrollTo(uint64_t aID, uint32_t aScrollType);
async ScrollToPoint(uint64_t aID, uint32_t aScrollType, int32_t aX,
@ -158,43 +158,43 @@ child:
// AccessibleText
// TextSubstring is getText in IDL.
nested(inside_sync) sync CaretLineNumber(uint64_t aID) returns(int32_t aLineNumber);
nested(inside_sync) sync CaretOffset(uint64_t aID) returns(int32_t aOffset);
[Nested=inside_sync] sync CaretLineNumber(uint64_t aID) returns(int32_t aLineNumber);
[Nested=inside_sync] sync CaretOffset(uint64_t aID) returns(int32_t aOffset);
async SetCaretOffset(uint64_t aID, int32_t aOffset);
nested(inside_sync) sync CharacterCount(uint64_t aID) returns(int32_t aCount);
nested(inside_sync) sync SelectionCount(uint64_t aID) returns(int32_t aCount);
nested(inside_sync) sync TextSubstring(uint64_t aID, int32_t aStartOffset, int32_t
[Nested=inside_sync] sync CharacterCount(uint64_t aID) returns(int32_t aCount);
[Nested=inside_sync] sync SelectionCount(uint64_t aID) returns(int32_t aCount);
[Nested=inside_sync] sync TextSubstring(uint64_t aID, int32_t aStartOffset, int32_t
aEndOffset) returns(nsString aText, bool aValid);
nested(inside_sync) sync GetTextAfterOffset(uint64_t aID, int32_t aOffset, int32_t aBoundaryType)
[Nested=inside_sync] sync GetTextAfterOffset(uint64_t aID, int32_t aOffset, int32_t aBoundaryType)
returns(nsString aText, int32_t aStartOffset, int32_t aEndOffset);
nested(inside_sync) sync GetTextAtOffset(uint64_t aID, int32_t aOffset, int32_t aBoundaryType)
[Nested=inside_sync] sync GetTextAtOffset(uint64_t aID, int32_t aOffset, int32_t aBoundaryType)
returns(nsString aText, int32_t aStartOffset, int32_t aEndOffset);
nested(inside_sync) sync GetTextBeforeOffset(uint64_t aID, int32_t aOffset, int32_t aBoundaryType)
[Nested=inside_sync] sync GetTextBeforeOffset(uint64_t aID, int32_t aOffset, int32_t aBoundaryType)
returns(nsString aText, int32_t aStartOffset, int32_t aEndOffset);
nested(inside_sync) sync CharAt(uint64_t aID, int32_t aOffset) returns(uint16_t aChar);
[Nested=inside_sync] sync CharAt(uint64_t aID, int32_t aOffset) returns(uint16_t aChar);
nested(inside_sync) sync TextAttributes(uint64_t aID, bool aIncludeDefAttrs, int32_t aOffset)
[Nested=inside_sync] sync TextAttributes(uint64_t aID, bool aIncludeDefAttrs, int32_t aOffset)
returns(Attribute[] aAttributes, int32_t aStartOffset, int32_t aEndOffset);
nested(inside_sync) sync DefaultTextAttributes(uint64_t aID) returns(Attribute[] aAttributes);
[Nested=inside_sync] sync DefaultTextAttributes(uint64_t aID) returns(Attribute[] aAttributes);
nested(inside_sync) sync TextBounds(uint64_t aID, int32_t aStartOffset, int32_t aEndOffset,
[Nested=inside_sync] sync TextBounds(uint64_t aID, int32_t aStartOffset, int32_t aEndOffset,
uint32_t aCoordType)
returns(nsIntRect aRetVal);
nested(inside_sync) sync CharBounds(uint64_t aID, int32_t aOffset, uint32_t aCoordType)
[Nested=inside_sync] sync CharBounds(uint64_t aID, int32_t aOffset, uint32_t aCoordType)
returns(nsIntRect aRetVal);
nested(inside_sync) sync OffsetAtPoint(uint64_t aID, int32_t aX, int32_t aY, uint32_t aCoordType)
[Nested=inside_sync] sync OffsetAtPoint(uint64_t aID, int32_t aX, int32_t aY, uint32_t aCoordType)
returns(int32_t aRetVal);
nested(inside_sync) sync SelectionBoundsAt(uint64_t aID, int32_t aSelectionNum)
[Nested=inside_sync] sync SelectionBoundsAt(uint64_t aID, int32_t aSelectionNum)
returns(bool aSucceeded, nsString aData, int32_t aStartOffset, int32_t aEndOffset);
nested(inside_sync) sync SetSelectionBoundsAt(uint64_t aID, int32_t aSelectionNum,
[Nested=inside_sync] sync SetSelectionBoundsAt(uint64_t aID, int32_t aSelectionNum,
int32_t aStartOffset, int32_t aEndOffset)
returns(bool aSucceeded);
nested(inside_sync) sync AddToSelection(uint64_t aID, int32_t aStartOffset, int32_t aEndOffset)
[Nested=inside_sync] sync AddToSelection(uint64_t aID, int32_t aStartOffset, int32_t aEndOffset)
returns(bool aSucceeded);
nested(inside_sync) sync RemoveFromSelection(uint64_t aID, int32_t aSelectionNum)
[Nested=inside_sync] sync RemoveFromSelection(uint64_t aID, int32_t aSelectionNum)
returns(bool aSucceeded);
async ScrollSubstringTo(uint64_t aID, int32_t aStartOffset, int32_t aEndOffset,
@ -205,124 +205,124 @@ child:
uint32_t aCoordinateType,
int32_t aX, int32_t aY);
nested(inside_sync) sync Text(uint64_t aID) returns(nsString aText);
nested(inside_sync) sync ReplaceText(uint64_t aID, nsString aText);
nested(inside_sync) sync InsertText(uint64_t aID, nsString aText, int32_t aPosition)
[Nested=inside_sync] sync Text(uint64_t aID) returns(nsString aText);
[Nested=inside_sync] sync ReplaceText(uint64_t aID, nsString aText);
[Nested=inside_sync] sync InsertText(uint64_t aID, nsString aText, int32_t aPosition)
returns(bool aValid);
nested(inside_sync) sync CopyText(uint64_t aID, int32_t aStartPos, int32_t aEndPos)
[Nested=inside_sync] sync CopyText(uint64_t aID, int32_t aStartPos, int32_t aEndPos)
returns(bool aValid);
nested(inside_sync) sync CutText(uint64_t aID, int32_t aStartPos, int32_t aEndPos)
[Nested=inside_sync] sync CutText(uint64_t aID, int32_t aStartPos, int32_t aEndPos)
returns(bool aValid);
nested(inside_sync) sync DeleteText(uint64_t aID, int32_t aStartPos, int32_t aEndPos)
[Nested=inside_sync] sync DeleteText(uint64_t aID, int32_t aStartPos, int32_t aEndPos)
returns(bool aValid);
nested(inside_sync) sync PasteText(uint64_t aID, int32_t aPosition)
[Nested=inside_sync] sync PasteText(uint64_t aID, int32_t aPosition)
returns(bool aValid);
nested(inside_sync) sync ImagePosition(uint64_t aID, uint32_t aCoordType) returns(IntPoint aRetVal);
nested(inside_sync) sync ImageSize(uint64_t aID) returns(IntSize aRetVal);
[Nested=inside_sync] sync ImagePosition(uint64_t aID, uint32_t aCoordType) returns(IntPoint aRetVal);
[Nested=inside_sync] sync ImageSize(uint64_t aID) returns(IntSize aRetVal);
nested(inside_sync) sync StartOffset(uint64_t aID) returns(uint32_t aRetVal, bool aOk);
nested(inside_sync) sync EndOffset(uint64_t aID) returns(uint32_t aRetVal, bool aOk);
nested(inside_sync) sync IsLinkValid(uint64_t aID) returns(bool aRetVal);
nested(inside_sync) sync AnchorCount(uint64_t aID) returns(uint32_t aRetVal, bool aOk);
nested(inside_sync) sync AnchorURIAt(uint64_t aID, uint32_t aIndex) returns(nsCString aURI, bool aOk);
nested(inside_sync) sync AnchorAt(uint64_t aID, uint32_t aIndex) returns(uint64_t aIDOfAnchor, bool aOk);
[Nested=inside_sync] sync StartOffset(uint64_t aID) returns(uint32_t aRetVal, bool aOk);
[Nested=inside_sync] sync EndOffset(uint64_t aID) returns(uint32_t aRetVal, bool aOk);
[Nested=inside_sync] sync IsLinkValid(uint64_t aID) returns(bool aRetVal);
[Nested=inside_sync] sync AnchorCount(uint64_t aID) returns(uint32_t aRetVal, bool aOk);
[Nested=inside_sync] sync AnchorURIAt(uint64_t aID, uint32_t aIndex) returns(nsCString aURI, bool aOk);
[Nested=inside_sync] sync AnchorAt(uint64_t aID, uint32_t aIndex) returns(uint64_t aIDOfAnchor, bool aOk);
nested(inside_sync) sync LinkCount(uint64_t aID) returns(uint32_t aCount);
nested(inside_sync) sync LinkAt(uint64_t aID, uint32_t aIndex) returns(uint64_t aIDOfLink, bool aOk);
nested(inside_sync) sync LinkIndexOf(uint64_t aID, uint64_t aLinkID) returns(int32_t aIndex);
nested(inside_sync) sync LinkIndexAtOffset(uint64_t aID, uint32_t aOffset) returns(int32_t aIndex);
[Nested=inside_sync] sync LinkCount(uint64_t aID) returns(uint32_t aCount);
[Nested=inside_sync] sync LinkAt(uint64_t aID, uint32_t aIndex) returns(uint64_t aIDOfLink, bool aOk);
[Nested=inside_sync] sync LinkIndexOf(uint64_t aID, uint64_t aLinkID) returns(int32_t aIndex);
[Nested=inside_sync] sync LinkIndexAtOffset(uint64_t aID, uint32_t aOffset) returns(int32_t aIndex);
nested(inside_sync) sync TableOfACell(uint64_t aID) returns(uint64_t aTableID, bool aOk);
nested(inside_sync) sync ColIdx(uint64_t aID) returns(uint32_t aIndex);
nested(inside_sync) sync RowIdx(uint64_t aID) returns(uint32_t aIndex);
nested(inside_sync) sync GetPosition(uint64_t aID) returns(uint32_t aRow, uint32_t aCol);
nested(inside_sync) sync ColExtent(uint64_t aID) returns(uint32_t aExtent);
nested(inside_sync) sync RowExtent(uint64_t aID) returns(uint32_t aExtent);
nested(inside_sync) sync GetColRowExtents(uint64_t aID)
[Nested=inside_sync] sync TableOfACell(uint64_t aID) returns(uint64_t aTableID, bool aOk);
[Nested=inside_sync] sync ColIdx(uint64_t aID) returns(uint32_t aIndex);
[Nested=inside_sync] sync RowIdx(uint64_t aID) returns(uint32_t aIndex);
[Nested=inside_sync] sync GetPosition(uint64_t aID) returns(uint32_t aRow, uint32_t aCol);
[Nested=inside_sync] sync ColExtent(uint64_t aID) returns(uint32_t aExtent);
[Nested=inside_sync] sync RowExtent(uint64_t aID) returns(uint32_t aExtent);
[Nested=inside_sync] sync GetColRowExtents(uint64_t aID)
returns(uint32_t aCol, uint32_t aRow, uint32_t aColExtent, uint32_t aRowExtent);
nested(inside_sync) sync ColHeaderCells(uint64_t aID) returns(uint64_t[] aCells);
nested(inside_sync) sync RowHeaderCells(uint64_t aID) returns(uint64_t[] aCells);
nested(inside_sync) sync IsCellSelected(uint64_t aID) returns(bool aSelected);
[Nested=inside_sync] sync ColHeaderCells(uint64_t aID) returns(uint64_t[] aCells);
[Nested=inside_sync] sync RowHeaderCells(uint64_t aID) returns(uint64_t[] aCells);
[Nested=inside_sync] sync IsCellSelected(uint64_t aID) returns(bool aSelected);
nested(inside_sync) sync TableCaption(uint64_t aID) returns(uint64_t aCaptionID, bool aOk);
nested(inside_sync) sync TableSummary(uint64_t aID) returns(nsString aSummary);
nested(inside_sync) sync TableColumnCount(uint64_t aID) returns(uint32_t aColCount);
nested(inside_sync) sync TableRowCount(uint64_t aID) returns(uint32_t aRowCount);
nested(inside_sync) sync TableCellAt(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(uint64_t aCellID, bool aOk);
nested(inside_sync) sync TableCellIndexAt(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(int32_t aIndex);
nested(inside_sync) sync TableColumnIndexAt(uint64_t aID, uint32_t aCellIndex) returns(int32_t aCol);
nested(inside_sync) sync TableRowIndexAt(uint64_t aID, uint32_t aCellIndex) returns(int32_t aRow);
nested(inside_sync) sync TableRowAndColumnIndicesAt(uint64_t aID, uint32_t aCellIndex) returns(int32_t aRow, int32_t aCol);
nested(inside_sync) sync TableColumnExtentAt(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(uint32_t aExtent);
nested(inside_sync) sync TableRowExtentAt(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(uint32_t aExtent);
nested(inside_sync) sync TableColumnDescription(uint64_t aID, uint32_t aCol) returns(nsString aDescription);
nested(inside_sync) sync TableRowDescription(uint64_t aID, uint32_t aRow) returns(nsString aDescription);
nested(inside_sync) sync TableColumnSelected(uint64_t aID, uint32_t aCol) returns(bool aSelected);
nested(inside_sync) sync TableRowSelected(uint64_t aID, uint32_t aRow) returns(bool aSelected);
nested(inside_sync) sync TableCellSelected(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(bool aSelected);
nested(inside_sync) sync TableSelectedCellCount(uint64_t aID) returns(uint32_t aSelectedCells);
nested(inside_sync) sync TableSelectedColumnCount(uint64_t aID) returns(uint32_t aSelectedColumns);
nested(inside_sync) sync TableSelectedRowCount(uint64_t aID) returns(uint32_t aSelectedRows);
nested(inside_sync) sync TableSelectedCells(uint64_t aID) returns(uint64_t[] aCellIDs);
nested(inside_sync) sync TableSelectedCellIndices(uint64_t aID) returns(uint32_t[] aCellIndeces);
nested(inside_sync) sync TableSelectedColumnIndices(uint64_t aID) returns(uint32_t[] aColumnIndeces);
nested(inside_sync) sync TableSelectedRowIndices(uint64_t aID) returns(uint32_t[] aRowIndeces);
nested(inside_sync) sync TableSelectColumn(uint64_t aID, uint32_t aCol);
nested(inside_sync) sync TableSelectRow(uint64_t aID, uint32_t aRow);
nested(inside_sync) sync TableUnselectColumn(uint64_t aID, uint32_t aCol);
nested(inside_sync) sync TableUnselectRow(uint64_t aID, uint32_t aRow);
nested(inside_sync) sync TableIsProbablyForLayout(uint64_t aID) returns(bool aForLayout);
nested(inside_sync) sync AtkTableColumnHeader(uint64_t aID, int32_t aCol)
[Nested=inside_sync] sync TableCaption(uint64_t aID) returns(uint64_t aCaptionID, bool aOk);
[Nested=inside_sync] sync TableSummary(uint64_t aID) returns(nsString aSummary);
[Nested=inside_sync] sync TableColumnCount(uint64_t aID) returns(uint32_t aColCount);
[Nested=inside_sync] sync TableRowCount(uint64_t aID) returns(uint32_t aRowCount);
[Nested=inside_sync] sync TableCellAt(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(uint64_t aCellID, bool aOk);
[Nested=inside_sync] sync TableCellIndexAt(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(int32_t aIndex);
[Nested=inside_sync] sync TableColumnIndexAt(uint64_t aID, uint32_t aCellIndex) returns(int32_t aCol);
[Nested=inside_sync] sync TableRowIndexAt(uint64_t aID, uint32_t aCellIndex) returns(int32_t aRow);
[Nested=inside_sync] sync TableRowAndColumnIndicesAt(uint64_t aID, uint32_t aCellIndex) returns(int32_t aRow, int32_t aCol);
[Nested=inside_sync] sync TableColumnExtentAt(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(uint32_t aExtent);
[Nested=inside_sync] sync TableRowExtentAt(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(uint32_t aExtent);
[Nested=inside_sync] sync TableColumnDescription(uint64_t aID, uint32_t aCol) returns(nsString aDescription);
[Nested=inside_sync] sync TableRowDescription(uint64_t aID, uint32_t aRow) returns(nsString aDescription);
[Nested=inside_sync] sync TableColumnSelected(uint64_t aID, uint32_t aCol) returns(bool aSelected);
[Nested=inside_sync] sync TableRowSelected(uint64_t aID, uint32_t aRow) returns(bool aSelected);
[Nested=inside_sync] sync TableCellSelected(uint64_t aID, uint32_t aRow, uint32_t aCol) returns(bool aSelected);
[Nested=inside_sync] sync TableSelectedCellCount(uint64_t aID) returns(uint32_t aSelectedCells);
[Nested=inside_sync] sync TableSelectedColumnCount(uint64_t aID) returns(uint32_t aSelectedColumns);
[Nested=inside_sync] sync TableSelectedRowCount(uint64_t aID) returns(uint32_t aSelectedRows);
[Nested=inside_sync] sync TableSelectedCells(uint64_t aID) returns(uint64_t[] aCellIDs);
[Nested=inside_sync] sync TableSelectedCellIndices(uint64_t aID) returns(uint32_t[] aCellIndeces);
[Nested=inside_sync] sync TableSelectedColumnIndices(uint64_t aID) returns(uint32_t[] aColumnIndeces);
[Nested=inside_sync] sync TableSelectedRowIndices(uint64_t aID) returns(uint32_t[] aRowIndeces);
[Nested=inside_sync] sync TableSelectColumn(uint64_t aID, uint32_t aCol);
[Nested=inside_sync] sync TableSelectRow(uint64_t aID, uint32_t aRow);
[Nested=inside_sync] sync TableUnselectColumn(uint64_t aID, uint32_t aCol);
[Nested=inside_sync] sync TableUnselectRow(uint64_t aID, uint32_t aRow);
[Nested=inside_sync] sync TableIsProbablyForLayout(uint64_t aID) returns(bool aForLayout);
[Nested=inside_sync] sync AtkTableColumnHeader(uint64_t aID, int32_t aCol)
returns(uint64_t aHeaderID, bool aOk);
nested(inside_sync) sync AtkTableRowHeader(uint64_t aID, int32_t aRow)
[Nested=inside_sync] sync AtkTableRowHeader(uint64_t aID, int32_t aRow)
returns(uint64_t aHeaderID, bool aOk);
nested(inside_sync) sync SelectedItems(uint64_t aID) returns(uint64_t[] aSelectedItemIDs);
nested(inside_sync) sync SelectedItemCount(uint64_t aID) returns(uint32_t aCount);
nested(inside_sync) sync GetSelectedItem(uint64_t aID, uint32_t aIndex) returns(uint64_t aSelected, bool aOk);
nested(inside_sync) sync IsItemSelected(uint64_t aID, uint32_t aIndex) returns(bool aSelected);
nested(inside_sync) sync AddItemToSelection(uint64_t aID, uint32_t aIndex) returns(bool aSuccess);
nested(inside_sync) sync RemoveItemFromSelection(uint64_t aID, uint32_t aIndex) returns(bool aSuccess);
nested(inside_sync) sync SelectAll(uint64_t aID) returns(bool aSuccess);
nested(inside_sync) sync UnselectAll(uint64_t aID) returns(bool aSuccess);
[Nested=inside_sync] sync SelectedItems(uint64_t aID) returns(uint64_t[] aSelectedItemIDs);
[Nested=inside_sync] sync SelectedItemCount(uint64_t aID) returns(uint32_t aCount);
[Nested=inside_sync] sync GetSelectedItem(uint64_t aID, uint32_t aIndex) returns(uint64_t aSelected, bool aOk);
[Nested=inside_sync] sync IsItemSelected(uint64_t aID, uint32_t aIndex) returns(bool aSelected);
[Nested=inside_sync] sync AddItemToSelection(uint64_t aID, uint32_t aIndex) returns(bool aSuccess);
[Nested=inside_sync] sync RemoveItemFromSelection(uint64_t aID, uint32_t aIndex) returns(bool aSuccess);
[Nested=inside_sync] sync SelectAll(uint64_t aID) returns(bool aSuccess);
[Nested=inside_sync] sync UnselectAll(uint64_t aID) returns(bool aSuccess);
async TakeSelection(uint64_t aID);
async SetSelected(uint64_t aID, bool aSelected);
nested(inside_sync) sync DoAction(uint64_t aID, uint8_t aIndex) returns(bool aSuccess);
nested(inside_sync) sync ActionCount(uint64_t aID) returns(uint8_t aCount);
nested(inside_sync) sync ActionDescriptionAt(uint64_t aID, uint8_t aIndex) returns(nsString aDescription);
nested(inside_sync) sync ActionNameAt(uint64_t aID, uint8_t aIndex) returns(nsString aName);
nested(inside_sync) sync AccessKey(uint64_t aID) returns(uint32_t aKey, uint32_t aModifierMask);
nested(inside_sync) sync KeyboardShortcut(uint64_t aID) returns(uint32_t aKey, uint32_t aModifierMask);
nested(inside_sync) sync AtkKeyBinding(uint64_t aID) returns(nsString aResult);
[Nested=inside_sync] sync DoAction(uint64_t aID, uint8_t aIndex) returns(bool aSuccess);
[Nested=inside_sync] sync ActionCount(uint64_t aID) returns(uint8_t aCount);
[Nested=inside_sync] sync ActionDescriptionAt(uint64_t aID, uint8_t aIndex) returns(nsString aDescription);
[Nested=inside_sync] sync ActionNameAt(uint64_t aID, uint8_t aIndex) returns(nsString aName);
[Nested=inside_sync] sync AccessKey(uint64_t aID) returns(uint32_t aKey, uint32_t aModifierMask);
[Nested=inside_sync] sync KeyboardShortcut(uint64_t aID) returns(uint32_t aKey, uint32_t aModifierMask);
[Nested=inside_sync] sync AtkKeyBinding(uint64_t aID) returns(nsString aResult);
nested(inside_sync) sync CurValue(uint64_t aID) returns(double aValue);
nested(inside_sync) sync SetCurValue(uint64_t aID, double aValue) returns(bool aRetVal);
nested(inside_sync) sync MinValue(uint64_t aID) returns(double aValue);
nested(inside_sync) sync MaxValue(uint64_t aID) returns(double aValue);
nested(inside_sync) sync Step(uint64_t aID) returns(double aStep);
[Nested=inside_sync] sync CurValue(uint64_t aID) returns(double aValue);
[Nested=inside_sync] sync SetCurValue(uint64_t aID, double aValue) returns(bool aRetVal);
[Nested=inside_sync] sync MinValue(uint64_t aID) returns(double aValue);
[Nested=inside_sync] sync MaxValue(uint64_t aID) returns(double aValue);
[Nested=inside_sync] sync Step(uint64_t aID) returns(double aStep);
async TakeFocus(uint64_t aID);
nested(inside_sync) sync FocusedChild(uint64_t aID)
[Nested=inside_sync] sync FocusedChild(uint64_t aID)
returns(nullable PDocAccessible aResultDoc, uint64_t aResultID);
nested(inside_sync) sync Language(uint64_t aID) returns(nsString aLocale);
nested(inside_sync) sync DocType(uint64_t aID) returns(nsString aType);
nested(inside_sync) sync Title(uint64_t aID) returns(nsString aTitle);
nested(inside_sync) sync URL(uint64_t aID) returns(nsString aURL);
nested(inside_sync) sync MimeType(uint64_t aID) returns(nsString aMime);
nested(inside_sync) sync URLDocTypeMimeType(uint64_t aID) returns(nsString aURL, nsString aDocType, nsString aMimeType);
[Nested=inside_sync] sync Language(uint64_t aID) returns(nsString aLocale);
[Nested=inside_sync] sync DocType(uint64_t aID) returns(nsString aType);
[Nested=inside_sync] sync Title(uint64_t aID) returns(nsString aTitle);
[Nested=inside_sync] sync URL(uint64_t aID) returns(nsString aURL);
[Nested=inside_sync] sync MimeType(uint64_t aID) returns(nsString aMime);
[Nested=inside_sync] sync URLDocTypeMimeType(uint64_t aID) returns(nsString aURL, nsString aDocType, nsString aMimeType);
nested(inside_sync) sync ChildAtPoint(uint64_t aID, int32_t aX, int32_t aY, uint32_t aWhich)
[Nested=inside_sync] sync ChildAtPoint(uint64_t aID, int32_t aX, int32_t aY, uint32_t aWhich)
returns(nullable PDocAccessible aResultDoc, uint64_t aResultID);
nested(inside_sync) sync Extents(uint64_t aID, bool aNeedsScreenCoords)
[Nested=inside_sync] sync Extents(uint64_t aID, bool aNeedsScreenCoords)
returns(int32_t aX, int32_t aY, int32_t aWidth, int32_t aHeight);
nested(inside_sync) sync ExtentsInCSSPixels(uint64_t aID)
[Nested=inside_sync] sync ExtentsInCSSPixels(uint64_t aID)
returns(int32_t aX, int32_t aY, int32_t aWidth, int32_t aHeight);
nested(inside_sync) sync DOMNodeID(uint64_t aID) returns(nsString aDOMNodeID);
[Nested=inside_sync] sync DOMNodeID(uint64_t aID) returns(nsString aDOMNodeID);
};
}

View File

@ -283,8 +283,8 @@ parent:
* notification Whole data of the notification
* requests Requests of notification for IME of the native widget
*/
nested(inside_cpow) async NotifyIMEFocus(ContentCache contentCache,
IMENotification notification)
[Nested=inside_cpow] async NotifyIMEFocus(ContentCache contentCache,
IMENotification notification)
returns (IMENotificationRequests requests);
/**
@ -295,16 +295,16 @@ parent:
* contentCache Cache of content
* notification Whole data of the notification
*/
nested(inside_cpow) async NotifyIMETextChange(ContentCache contentCache,
IMENotification notification);
[Nested=inside_cpow] async NotifyIMETextChange(ContentCache contentCache,
IMENotification notification);
/**
* Notifies chrome that there is a IME compostion rect updated
*
* contentCache Cache of content
*/
nested(inside_cpow) async NotifyIMECompositionUpdate(ContentCache contentCache,
IMENotification notification);
[Nested=inside_cpow] async NotifyIMECompositionUpdate(ContentCache contentCache,
IMENotification notification);
/**
* Notifies chrome that there has been a change in selection
@ -313,8 +313,8 @@ parent:
* contentCache Cache of content
* notification Whole data of the notification
*/
nested(inside_cpow) async NotifyIMESelection(ContentCache contentCache,
IMENotification notification);
[Nested=inside_cpow] async NotifyIMESelection(ContentCache contentCache,
IMENotification notification);
/**
* Notifies chrome of updating its content cache.
@ -322,14 +322,14 @@ parent:
*
* contentCache Cache of content
*/
nested(inside_cpow) async UpdateContentCache(ContentCache contentCache);
[Nested=inside_cpow] async UpdateContentCache(ContentCache contentCache);
/**
* Notifies IME of mouse button event on a character in focused editor.
*
* Returns true if the mouse button event is consumed by IME.
*/
nested(inside_cpow) sync NotifyIMEMouseButtonEvent(IMENotification notification)
[Nested=inside_cpow] sync NotifyIMEMouseButtonEvent(IMENotification notification)
returns (bool consumedByIME);
/**
@ -337,8 +337,8 @@ parent:
*
* contentCache Cache of content
*/
nested(inside_cpow) async NotifyIMEPositionChange(ContentCache contentCache,
IMENotification notification);
[Nested=inside_cpow] async NotifyIMEPositionChange(ContentCache contentCache,
IMENotification notification);
/**
* Requests chrome to commit or cancel composition of IME.
@ -352,8 +352,8 @@ parent:
* try to restore selected string which was
* replaced with the composition.
*/
nested(inside_cpow) sync RequestIMEToCommitComposition(bool cancel)
returns (bool isCommitted, nsString committedString);
[Nested=inside_cpow] sync RequestIMEToCommitComposition(bool cancel)
returns (bool isCommitted, nsString committedString);
/**
* OnEventNeedingAckHandled() is called after a child process dispatches a
@ -362,7 +362,7 @@ parent:
*
* message The message value of the handled event.
*/
nested(inside_cpow) async OnEventNeedingAckHandled(EventMessage message);
[Nested=inside_cpow] async OnEventNeedingAckHandled(EventMessage message);
/**
* Request that the parent process move focus to the browser's frame. If
@ -385,10 +385,10 @@ parent:
nsCString[] enabledCommands,
nsCString[] disabledCommands);
nested(inside_cpow) sync GetInputContext() returns (IMEState state);
[Nested=inside_cpow] sync GetInputContext() returns (IMEState state);
nested(inside_cpow) async SetInputContext(InputContext context,
InputContextAction action);
[Nested=inside_cpow] async SetInputContext(InputContext context,
InputContextAction action);
/**
* Set the native cursor.
@ -595,7 +595,7 @@ child:
/**
* Parent informs the child to release all pointer capture.
*/
prio(input) async ReleaseAllPointerCapture();
[Priority=input] async ReleaseAllPointerCapture();
parent:
@ -635,9 +635,9 @@ parent:
async SetDimensions(uint32_t aFlags, int32_t aX, int32_t aY,
int32_t aCx, int32_t aCy, double aScale);
nested(inside_sync) sync DispatchWheelEvent(WidgetWheelEvent event);
nested(inside_sync) sync DispatchMouseEvent(WidgetMouseEvent event);
nested(inside_sync) sync DispatchKeyboardEvent(WidgetKeyboardEvent event);
[Nested=inside_sync] sync DispatchWheelEvent(WidgetWheelEvent event);
[Nested=inside_sync] sync DispatchMouseEvent(WidgetMouseEvent event);
[Nested=inside_sync] sync DispatchKeyboardEvent(WidgetKeyboardEvent event);
async InvokeDragSession(IPCDataTransfer[] transfers, uint32_t action,
Shmem? visualData,
@ -739,10 +739,10 @@ child:
* When two consecutive mouse move events would be added to the message queue,
* they are 'compressed' by dumping the oldest one.
*/
[Compress]
prio(input) async RealMouseMoveEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
[Compress, Priority=input]
async RealMouseMoveEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
[Compress]
async NormalPriorityRealMouseMoveEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
@ -755,9 +755,10 @@ child:
* test the `Compress`, send mouse move events with setting `isSyntehsized`
* of `aEvent` of `EventUtils#syntehsizeMouse*()`.
*/
prio(input) async RealMouseMoveEventForTests(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
[Priority=input]
async RealMouseMoveEventForTests(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
async NormalPriorityRealMouseMoveEventForTests(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
@ -769,61 +770,67 @@ child:
* |reason == eReal| event being dropped in favour of an |eSynthesized|
* event, and thus a DOM 'mousemove' event to be lost.
*/
prio(input) async SynthMouseMoveEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
[Priority=input]
async SynthMouseMoveEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
async NormalPrioritySynthMouseMoveEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
prio(input) async RealMouseButtonEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
[Priority=input]
async RealMouseButtonEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
async NormalPriorityRealMouseButtonEvent(WidgetMouseEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
prio(input) async RealKeyEvent(WidgetKeyboardEvent event);
[Priority=input]
async RealKeyEvent(WidgetKeyboardEvent event);
async NormalPriorityRealKeyEvent(WidgetKeyboardEvent event);
prio(input) async MouseWheelEvent(WidgetWheelEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
[Priority=input]
async MouseWheelEvent(WidgetWheelEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
async NormalPriorityMouseWheelEvent(WidgetWheelEvent event,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
prio(input) async RealTouchEvent(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId,
nsEventStatus aApzResponse);
[Priority=input]
async RealTouchEvent(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId,
nsEventStatus aApzResponse);
async NormalPriorityRealTouchEvent(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId,
nsEventStatus aApzResponse);
prio(input) async HandleTap(GeckoContentController_TapType aType, LayoutDevicePoint point,
Modifiers aModifiers, ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
[Priority=input]
async HandleTap(GeckoContentController_TapType aType, LayoutDevicePoint point,
Modifiers aModifiers, ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
async NormalPriorityHandleTap(GeckoContentController_TapType aType, LayoutDevicePoint point,
Modifiers aModifiers, ScrollableLayerGuid aGuid,
uint64_t aInputBlockId);
[Compress]
prio(input) async RealTouchMoveEvent(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId,
nsEventStatus aApzResponse);
[Compress, Priority=input]
async RealTouchMoveEvent(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId,
nsEventStatus aApzResponse);
[Compress]
async NormalPriorityRealTouchMoveEvent(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId,
nsEventStatus aApzResponse);
[Compress]
prio(input) async RealTouchMoveEvent2(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId,
nsEventStatus aApzResponse);
[Compress, Priority=input]
async RealTouchMoveEvent2(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
uint64_t aInputBlockId,
nsEventStatus aApzResponse);
[Compress]
async NormalPriorityRealTouchMoveEvent2(WidgetTouchEvent aEvent,
ScrollableLayerGuid aGuid,
@ -838,10 +845,10 @@ child:
uint32_t aDropEffect, nsIPrincipal aPrincipal,
nsIContentSecurityPolicy csp);
prio(input) async CompositionEvent(WidgetCompositionEvent event);
[Priority=input] async CompositionEvent(WidgetCompositionEvent event);
async NormalPriorityCompositionEvent(WidgetCompositionEvent event);
prio(input) async SelectionEvent(WidgetSelectionEvent event);
[Priority=input] async SelectionEvent(WidgetSelectionEvent event);
async NormalPrioritySelectionEvent(WidgetSelectionEvent event);
/**

View File

@ -862,7 +862,7 @@ child:
* IPC message to suspend consuming the pending events in the input event
* queue.
*/
prio(input) async SuspendInputEventQueue();
[Priority=input] async SuspendInputEventQueue();
/*
* IPC message to propagate dynamic scalar definitions, added after the
@ -1009,7 +1009,7 @@ parent:
async AccumulateMixedContentHSTS(nsIURI aURI, bool aActive,
OriginAttributes aOriginAttributes);
nested(inside_cpow) async PHal();
[Nested=inside_cpow] async PHal();
async PHeapSnapshotTempFileHelper();

View File

@ -24,7 +24,7 @@ async protocol PVsync
child:
// Send vsync event and vsync rate from chrome to content process.
[Compress] prio(high) async Notify(VsyncEvent aVsync, float aVsyncRate);
[Compress, Priority=high] async Notify(VsyncEvent aVsync, float aVsyncRate);
parent:
// Content process use these messages to acquire the vsync event.

View File

@ -118,9 +118,10 @@ child:
// the root layer tree).
// transactionId is the id of the transaction before this composite, or 0
// if there was no transaction since the last composite.
prio(mediumhigh) async DidComposite(LayersId id, TransactionId transactionId,
TimeStamp compositeStart,
TimeStamp compositeEnd);
[Priority=mediumhigh] async DidComposite(LayersId id,
TransactionId transactionId,
TimeStamp compositeStart,
TimeStamp compositeEnd);
async NotifyFrameStats(FrameStats[] aFrameStats);

View File

@ -322,8 +322,6 @@ class MessageDecl(Node):
self.name = None
self.attributes = {}
self.sendSemantics = ASYNC
self.nested = NOT_NESTED
self.prio = NORMAL_PRIORITY
self.direction = None
self.inParams = []
self.outParams = []
@ -334,6 +332,27 @@ class MessageDecl(Node):
def addOutParams(self, outParamsList):
self.outParams += outParamsList
def nested(self):
if "Nested" not in self.attributes:
return NOT_NESTED
return {
"not": NOT_NESTED,
"inside_sync": INSIDE_SYNC_NESTED,
"inside_cpow": INSIDE_CPOW_NESTED,
}[self.attributes["Nested"].value]
def priority(self):
if "Priority" not in self.attributes:
return NORMAL_PRIORITY
return {
"normal": NORMAL_PRIORITY,
"input": INPUT_PRIORITY,
"high": HIGH_PRIORITY,
"mediumhigh": MEDIUMHIGH_PRIORITY,
}[self.attributes["Priority"].value]
class Param(Node):
def __init__(self, loc, typespec, name):

View File

@ -135,7 +135,6 @@ reserved = set(
"nullable",
"or",
"parent",
"prio",
"protocol",
"refcounted",
"returns",
@ -494,12 +493,10 @@ def p_MessageDirectionLabel(p):
def p_MessageDecl(p):
"""MessageDecl : Attributes SendSemanticsQual MessageBody"""
"""MessageDecl : Attributes SendSemantics MessageBody"""
msg = p[3]
msg.attributes = p[1]
msg.nested = p[2][0]
msg.prio = p[2][1]
msg.sendSemantics = p[2][2]
msg.sendSemantics = p[2]
if Parser.current.direction is None:
_error(msg.loc, "missing message direction")
@ -582,54 +579,17 @@ def p_Nested(p):
p[0] = {"nested": kinds[p[1]]}
def p_Priority(p):
"""Priority : ID"""
kinds = {"normal": 1, "input": 2, "high": 3, "mediumhigh": 4}
if p[1] not in kinds:
_error(
locFromTok(p, 1), "Expected normal, input, high or mediumhigh for prio()"
)
p[0] = {"prio": kinds[p[1]]}
def p_SendQualifier(p):
"""SendQualifier : NESTED '(' Nested ')'
| PRIO '(' Priority ')'"""
p[0] = p[3]
def p_SendQualifierList(p):
"""SendQualifierList : SendQualifier SendQualifierList
|"""
if len(p) > 1:
p[0] = p[1]
p[0].update(p[2])
else:
p[0] = {}
def p_SendSemanticsQual(p):
"""SendSemanticsQual : SendQualifierList ASYNC
| SendQualifierList SYNC
def p_SendSemantics(p):
"""SendSemantics : ASYNC
| SYNC
| INTR"""
quals = {}
if len(p) == 3:
quals = p[1]
mtype = p[2]
if p[1] == "async":
p[0] = ASYNC
elif p[1] == "sync":
p[0] = SYNC
else:
mtype = "intr"
if mtype == "async":
mtype = ASYNC
elif mtype == "sync":
mtype = SYNC
elif mtype == "intr":
mtype = INTR
else:
assert 0
p[0] = [quals.get("nested", NOT_NESTED), quals.get("prio", NORMAL_PRIORITY), mtype]
assert p[1] == "intr"
p[0] = INTR
def p_OptionalProtocolSendSemanticsQual(p):

View File

@ -861,7 +861,7 @@ class GatherDecls(TcheckVisitor):
attr.loc,
"invalid value for attribute `%s', expected one of: %s",
attr.name,
", ".join(aspec),
", ".join(str(s) for s in aspec),
)
elif callable(aspec):
if not aspec(attr.value):
@ -1242,9 +1242,17 @@ class GatherDecls(TcheckVisitor):
{
"Tainted": None,
"Compress": (None, "all"),
"Priority": ("normal", "input", "high", "mediumhigh"),
"Nested": ("not", "inside_sync", "inside_cpow"),
},
)
if md.sendSemantics is INTR and "Priority" in md.attributes:
self.error(loc, "intr message `%s' cannot specify [Priority]", msgname)
if md.sendSemantics is INTR and "Nested" in md.attributes:
self.error(loc, "intr message `%s' cannot specify [Nested]", msgname)
isctor = False
isdtor = False
cdtype = None
@ -1272,8 +1280,8 @@ class GatherDecls(TcheckVisitor):
self.symtab.enterScope()
msgtype = MessageType(
md.nested,
md.prio,
md.nested(),
md.priority(),
md.sendSemantics,
md.direction,
ctor=isctor,

View File

@ -5,31 +5,31 @@ nested(upto inside_sync) sync protocol PTestCancel
{
// Test1
child:
nested(inside_sync) sync Test1_1();
[Nested=inside_sync] sync Test1_1();
parent:
async Done1();
// Test2
child:
async Start2();
nested(inside_sync) sync Test2_2();
[Nested=inside_sync] sync Test2_2();
parent:
sync Test2_1();
// Test3
child:
nested(inside_sync) sync Test3_1();
[Nested=inside_sync] sync Test3_1();
parent:
async Start3();
nested(inside_sync) sync Test3_2();
[Nested=inside_sync] sync Test3_2();
parent:
async Done();
child:
nested(inside_sync) sync CheckChild() returns (uint32_t reply);
[Nested=inside_sync] sync CheckChild() returns (uint32_t reply);
parent:
nested(inside_sync) sync CheckParent() returns (uint32_t reply);
[Nested=inside_sync] sync CheckParent() returns (uint32_t reply);
};
} // namespace _ipdltest

View File

@ -8,13 +8,13 @@ child:
both:
async AsyncMessage(int n);
nested(inside_sync) sync HiPrioSyncMessage();
[Nested=inside_sync] sync HiPrioSyncMessage();
parent:
sync SyncMessage(int n);
nested(inside_cpow) async UrgentAsyncMessage(int n);
nested(inside_cpow) sync UrgentSyncMessage(int n);
[Nested=inside_cpow] async UrgentAsyncMessage(int n);
[Nested=inside_cpow] sync UrgentSyncMessage(int n);
};
} // namespace _ipdltest

View File

@ -4,14 +4,14 @@ namespace _ipdltest {
nested(upto inside_cpow) sync protocol PTestHighestPrio
{
parent:
nested(inside_cpow) async Msg1();
nested(inside_sync) sync Msg2();
nested(inside_cpow) async Msg3();
nested(inside_cpow) sync Msg4();
[Nested=inside_cpow] async Msg1();
[Nested=inside_sync] sync Msg2();
[Nested=inside_cpow] async Msg3();
[Nested=inside_cpow] sync Msg4();
child:
async Start();
nested(inside_sync) sync StartInner();
[Nested=inside_sync] sync StartInner();
};
}

View File

@ -3,17 +3,17 @@ namespace _ipdltest {
sync protocol PTestPriority {
parent:
prio(input) async PMsg1();
prio(input) sync PMsg2();
prio(high) async PMsg3();
prio(high) sync PMsg4();
prio(mediumhigh) async PMsg5();
prio(mediumhigh) sync PMsg6();
[Priority=input] async PMsg1();
[Priority=input] sync PMsg2();
[Priority=high] async PMsg3();
[Priority=high] sync PMsg4();
[Priority=mediumhigh] async PMsg5();
[Priority=mediumhigh] sync PMsg6();
child:
prio(input) async CMsg1();
prio(high) async CMsg2();
prio(mediumhigh) async CMsg3();
[Priority=input] async CMsg1();
[Priority=high] async CMsg2();
[Priority=mediumhigh] async CMsg3();
};
} // namespace _ipdltest

View File

@ -4,17 +4,17 @@ namespace _ipdltest {
nested(upto inside_sync) sync protocol PTestRPC
{
parent:
nested(inside_sync) sync Test1_Start() returns (uint32_t result);
nested(inside_sync) sync Test1_InnerEvent() returns (uint32_t result);
[Nested=inside_sync] sync Test1_Start() returns (uint32_t result);
[Nested=inside_sync] sync Test1_InnerEvent() returns (uint32_t result);
async Test2_Start();
nested(inside_sync) sync Test2_OutOfOrder();
[Nested=inside_sync] sync Test2_OutOfOrder();
child:
async Start();
nested(inside_sync) sync Test1_InnerQuery() returns (uint32_t result);
nested(inside_sync) sync Test1_NoReenter() returns (uint32_t result);
nested(inside_sync) sync Test2_FirstUrgent();
nested(inside_sync) sync Test2_SecondUrgent();
[Nested=inside_sync] sync Test1_InnerQuery() returns (uint32_t result);
[Nested=inside_sync] sync Test1_NoReenter() returns (uint32_t result);
[Nested=inside_sync] sync Test2_FirstUrgent();
[Nested=inside_sync] sync Test2_SecondUrgent();
};
} // namespace _ipdltest

View File

@ -4,15 +4,15 @@ namespace _ipdltest {
nested(upto inside_cpow) sync protocol PTestUrgency
{
parent:
nested(inside_sync) sync Test1() returns (uint32_t result);
[Nested=inside_sync] sync Test1() returns (uint32_t result);
async Test2();
sync Test3() returns (uint32_t result);
sync FinalTest_Begin();
child:
async Start();
nested(inside_sync) sync Reply1() returns (uint32_t result);
nested(inside_sync) sync Reply2() returns (uint32_t result);
[Nested=inside_sync] sync Reply1() returns (uint32_t result);
[Nested=inside_sync] sync Reply2() returns (uint32_t result);
};
} // namespace _ipdltest

View File

@ -4,24 +4,24 @@ namespace _ipdltest {
nested(upto inside_cpow) sync protocol PTestUrgentHangs
{
parent:
nested(inside_sync) sync Test1_2();
[Nested=inside_sync] sync Test1_2();
nested(inside_sync) sync TestInner();
nested(inside_cpow) sync TestInnerUrgent();
[Nested=inside_sync] sync TestInner();
[Nested=inside_cpow] sync TestInnerUrgent();
child:
nested(inside_sync) sync Test1_1();
nested(inside_sync) sync Test1_3();
[Nested=inside_sync] sync Test1_1();
[Nested=inside_sync] sync Test1_3();
nested(inside_sync) sync Test2();
[Nested=inside_sync] sync Test2();
nested(inside_sync) sync Test3();
[Nested=inside_sync] sync Test3();
async Test4();
nested(inside_sync) sync Test4_1();
[Nested=inside_sync] sync Test4_1();
async Test5();
nested(inside_sync) sync Test5_1();
[Nested=inside_sync] sync Test5_1();
};
} // namespace _ipdltest

View File

@ -5,5 +5,5 @@
protocol AsyncInsideSync {
child:
nested(inside_sync) async Msg();
[Nested=inside_sync] async Msg();
};

View File

@ -5,5 +5,5 @@
protocol InsideCpowToChild {
child:
nested(inside_cpow) sync Msg();
[Nested=inside_cpow] sync Msg();
};

View File

@ -0,0 +1,6 @@
//error: intr message `Msg' cannot specify [Nested]
intr protocol PIntrNested {
child:
[Nested=inside_sync] intr Msg();
};

View File

@ -0,0 +1,6 @@
//error: intr message `Msg' cannot specify [Priority]
intr protocol PIntrPriority {
child:
[Priority=high] intr Msg();
};

View File

@ -0,0 +1,7 @@
nested(upto inside_cpow) sync protocol PNested {
parent:
[Nested=not] async NotNested();
[Nested=inside_sync] sync InsideSync();
[Nested=inside_cpow] async InsideCpow();
[Nested=inside_cpow] sync InsideCpowSync();
};

View File

@ -1,8 +1,8 @@
async protocol Prio
{
child:
prio(normal) async NormalPrio();
prio(high) async HighPrio();
prio(input) async InputPrio();
prio(mediumhigh) async MediumHighPrio();
[Priority=normal] async NormalPrio();
[Priority=high] async HighPrio();
[Priority=input] async InputPrio();
[Priority=mediumhigh] async MediumHighPrio();
};

View File

@ -42,3 +42,7 @@ description = test only
description = test only
[PasyncMessageListed::Msg]
description = test only
[PNested::InsideSync]
description = test only
[PNested::InsideCpowSync]
description = test only

View File

@ -32,11 +32,11 @@ nested(upto inside_cpow) sync protocol PCookieService
manager PNecko;
parent:
nested(inside_cpow) async SetCookies(nsCString baseDomain,
OriginAttributes attrs,
nsIURI host,
bool fromHttp,
CookieStruct[] cookies);
[Nested=inside_cpow] async SetCookies(nsCString baseDomain,
OriginAttributes attrs,
nsIURI host,
bool fromHttp,
CookieStruct[] cookies);
async PrepareCookieList(nsIURI host,
bool isForeign,

View File

@ -72,7 +72,7 @@ nested(upto inside_cpow) sync protocol PNecko
parent:
async __delete__();
nested(inside_cpow) async PCookieService();
[Nested=inside_cpow] async PCookieService();
async PHttpChannel(nullable PBrowser browser,
SerializedLoadContext loadContext,
HttpChannelCreationArgs args);
@ -175,7 +175,7 @@ child:
// Using medium high priority to deliver this notification possibly sooner than we
// enter poll() on the child process with infinite timeout.
prio(mediumhigh) async NetworkChangeNotification(nsCString type);
[Priority=mediumhigh] async NetworkChangeNotification(nsCString type);
async PTransportProvider();