#[repr(u8)]pub enum Role {
Show 186 variants
Unknown = 0,
InlineTextBox = 1,
Cell = 2,
Label = 3,
Image = 4,
Link = 5,
Row = 6,
ListItem = 7,
ListMarker = 8,
TreeItem = 9,
ListBoxOption = 10,
MenuItem = 11,
MenuListOption = 12,
Paragraph = 13,
GenericContainer = 14,
CheckBox = 15,
RadioButton = 16,
TextInput = 17,
Button = 18,
DefaultButton = 19,
Pane = 20,
RowHeader = 21,
ColumnHeader = 22,
RowGroup = 23,
List = 24,
Table = 25,
LayoutTableCell = 26,
LayoutTableRow = 27,
LayoutTable = 28,
Switch = 29,
Menu = 30,
MultilineTextInput = 31,
SearchInput = 32,
DateInput = 33,
DateTimeInput = 34,
WeekInput = 35,
MonthInput = 36,
TimeInput = 37,
EmailInput = 38,
NumberInput = 39,
PasswordInput = 40,
PhoneNumberInput = 41,
UrlInput = 42,
Abbr = 43,
Alert = 44,
AlertDialog = 45,
Application = 46,
Article = 47,
Audio = 48,
Banner = 49,
Blockquote = 50,
Canvas = 51,
Caption = 52,
Caret = 53,
Code = 54,
ColorWell = 55,
ComboBox = 56,
EditableComboBox = 57,
Complementary = 58,
Comment = 59,
ContentDeletion = 60,
ContentInsertion = 61,
ContentInfo = 62,
Definition = 63,
DescriptionList = 64,
DescriptionListDetail = 65,
DescriptionListTerm = 66,
Details = 67,
Dialog = 68,
Directory = 69,
DisclosureTriangle = 70,
Document = 71,
EmbeddedObject = 72,
Emphasis = 73,
Feed = 74,
FigureCaption = 75,
Figure = 76,
Footer = 77,
FooterAsNonLandmark = 78,
Form = 79,
Grid = 80,
Group = 81,
Header = 82,
HeaderAsNonLandmark = 83,
Heading = 84,
Iframe = 85,
IframePresentational = 86,
ImeCandidate = 87,
Keyboard = 88,
Legend = 89,
LineBreak = 90,
ListBox = 91,
Log = 92,
Main = 93,
Mark = 94,
Marquee = 95,
Math = 96,
MenuBar = 97,
MenuItemCheckBox = 98,
MenuItemRadio = 99,
MenuListPopup = 100,
Meter = 101,
Navigation = 102,
Note = 103,
PluginObject = 104,
Portal = 105,
Pre = 106,
ProgressIndicator = 107,
RadioGroup = 108,
Region = 109,
RootWebArea = 110,
Ruby = 111,
RubyAnnotation = 112,
ScrollBar = 113,
ScrollView = 114,
Search = 115,
Section = 116,
Slider = 117,
SpinButton = 118,
Splitter = 119,
Status = 120,
Strong = 121,
Suggestion = 122,
SvgRoot = 123,
Tab = 124,
TabList = 125,
TabPanel = 126,
Term = 127,
Time = 128,
Timer = 129,
TitleBar = 130,
Toolbar = 131,
Tooltip = 132,
Tree = 133,
TreeGrid = 134,
Video = 135,
WebView = 136,
Window = 137,
PdfActionableHighlight = 138,
PdfRoot = 139,
GraphicsDocument = 140,
GraphicsObject = 141,
GraphicsSymbol = 142,
DocAbstract = 143,
DocAcknowledgements = 144,
DocAfterword = 145,
DocAppendix = 146,
DocBackLink = 147,
DocBiblioEntry = 148,
DocBibliography = 149,
DocBiblioRef = 150,
DocChapter = 151,
DocColophon = 152,
DocConclusion = 153,
DocCover = 154,
DocCredit = 155,
DocCredits = 156,
DocDedication = 157,
DocEndnote = 158,
DocEndnotes = 159,
DocEpigraph = 160,
DocEpilogue = 161,
DocErrata = 162,
DocExample = 163,
DocFootnote = 164,
DocForeword = 165,
DocGlossary = 166,
DocGlossRef = 167,
DocIndex = 168,
DocIntroduction = 169,
DocNoteRef = 170,
DocNotice = 171,
DocPageBreak = 172,
DocPageFooter = 173,
DocPageHeader = 174,
DocPageList = 175,
DocPart = 176,
DocPreface = 177,
DocPrologue = 178,
DocPullquote = 179,
DocQna = 180,
DocSubtitle = 181,
DocTip = 182,
DocToc = 183,
ListGrid = 184,
Terminal = 185,
}
Expand description
The type of an accessibility node.
The majority of these roles come from the ARIA specification. Reference the latest draft for proper usage.
Like the AccessKit schema as a whole, this list is largely taken
from Chromium. However, unlike Chromium’s alphabetized list, this list
is ordered roughly by expected usage frequency (with the notable exception
of Role::Unknown
). This is more efficient in serialization formats
where integers use a variable-length encoding.
Variants§
Unknown = 0
InlineTextBox = 1
Cell = 2
Label = 3
Image = 4
Link = 5
Row = 6
ListItem = 7
ListMarker = 8
Contains the bullet, number, or other marker for a list item.
TreeItem = 9
ListBoxOption = 10
MenuItem = 11
MenuListOption = 12
Paragraph = 13
GenericContainer = 14
A generic container that should be ignored by assistive technologies
and filtered out of platform accessibility trees. Equivalent to the ARIA
none
or presentation
role, or to an HTML div
with no role.
CheckBox = 15
RadioButton = 16
TextInput = 17
Button = 18
DefaultButton = 19
Pane = 20
RowHeader = 21
ColumnHeader = 22
RowGroup = 23
List = 24
Table = 25
LayoutTableCell = 26
LayoutTableRow = 27
LayoutTable = 28
Switch = 29
Menu = 30
MultilineTextInput = 31
SearchInput = 32
DateInput = 33
DateTimeInput = 34
WeekInput = 35
MonthInput = 36
TimeInput = 37
EmailInput = 38
NumberInput = 39
PasswordInput = 40
PhoneNumberInput = 41
UrlInput = 42
Abbr = 43
Alert = 44
AlertDialog = 45
Application = 46
Article = 47
Audio = 48
Banner = 49
Blockquote = 50
Canvas = 51
Caption = 52
Caret = 53
Code = 54
ColorWell = 55
ComboBox = 56
EditableComboBox = 57
Complementary = 58
Comment = 59
ContentDeletion = 60
ContentInsertion = 61
ContentInfo = 62
Definition = 63
DescriptionList = 64
DescriptionListDetail = 65
DescriptionListTerm = 66
Details = 67
Dialog = 68
Directory = 69
DisclosureTriangle = 70
Document = 71
EmbeddedObject = 72
Emphasis = 73
Feed = 74
FigureCaption = 75
Figure = 76
Form = 79
Grid = 80
Group = 81
Header = 82
HeaderAsNonLandmark = 83
Heading = 84
Iframe = 85
IframePresentational = 86
ImeCandidate = 87
Keyboard = 88
Legend = 89
LineBreak = 90
ListBox = 91
Log = 92
Main = 93
Mark = 94
Marquee = 95
Math = 96
MenuBar = 97
MenuItemCheckBox = 98
MenuItemRadio = 99
MenuListPopup = 100
Meter = 101
Note = 103
PluginObject = 104
Portal = 105
Pre = 106
ProgressIndicator = 107
RadioGroup = 108
Region = 109
RootWebArea = 110
Ruby = 111
RubyAnnotation = 112
ScrollBar = 113
ScrollView = 114
Search = 115
Section = 116
Slider = 117
SpinButton = 118
Splitter = 119
Status = 120
Strong = 121
Suggestion = 122
SvgRoot = 123
Tab = 124
TabList = 125
TabPanel = 126
Term = 127
Time = 128
Timer = 129
TitleBar = 130
Toolbar = 131
Tooltip = 132
Tree = 133
TreeGrid = 134
Video = 135
WebView = 136
Window = 137
PdfActionableHighlight = 138
PdfRoot = 139
GraphicsDocument = 140
GraphicsObject = 141
GraphicsSymbol = 142
DocAbstract = 143
DocAcknowledgements = 144
DocAfterword = 145
DocAppendix = 146
DocBackLink = 147
DocBiblioEntry = 148
DocBibliography = 149
DocBiblioRef = 150
DocChapter = 151
DocColophon = 152
DocConclusion = 153
DocCover = 154
DocCredit = 155
DocCredits = 156
DocDedication = 157
DocEndnote = 158
DocEndnotes = 159
DocEpigraph = 160
DocEpilogue = 161
DocErrata = 162
DocExample = 163
DocFootnote = 164
DocForeword = 165
DocGlossary = 166
DocGlossRef = 167
DocIndex = 168
DocIntroduction = 169
DocNoteRef = 170
DocNotice = 171
DocPageBreak = 172
DocPageHeader = 174
DocPageList = 175
DocPart = 176
DocPreface = 177
DocPrologue = 178
DocPullquote = 179
DocQna = 180
DocSubtitle = 181
DocTip = 182
DocToc = 183
ListGrid = 184
Behaves similar to an ARIA grid but is primarily used by Chromium’s
TableView
and its subclasses, so they can be exposed correctly
on certain platforms.
Terminal = 185
This is just like a multi-line document, but signals that assistive technologies should implement behavior specific to a VT-100-style terminal.
Implementations§
Trait Implementations§
§impl<'de> Deserialize<'de> for Role
impl<'de> Deserialize<'de> for Role
§fn deserialize<__D>(
__deserializer: __D
) -> Result<Role, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<Role, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl Ord for Role
impl Ord for Role
§impl PartialOrd for Role
impl PartialOrd for Role
§fn partial_cmp(&self, other: &Role) -> Option<Ordering>
fn partial_cmp(&self, other: &Role) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read more§impl Serialize for Role
impl Serialize for Role
§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Copy for Role
impl Eq for Role
impl StructuralPartialEq for Role
Auto Trait Implementations§
impl Freeze for Role
impl RefUnwindSafe for Role
impl Send for Role
impl Sync for Role
impl Unpin for Role
impl UnwindSafe for Role
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request