pub struct OverflowMenu { /* private fields */ }Expand description
Overflow menu element representation.
§Fields and Validations
For more details, see the official documentation.
| Field | Type | Required | Validation |
|---|---|---|---|
| action_id | String | No | Max length 255 characters |
| options | Vec<Opt<Text<Plain>, UrlAvailable>> | Yes | Max 5 items |
| confirm | ConfirmationDialog | No | N/A |
§Example
use slack_messaging::plain_text;
use slack_messaging::blocks::elements::OverflowMenu;
use slack_messaging::composition_objects::Opt;
let menu = OverflowMenu::builder()
.action_id("overflow_0")
.option(
Opt::builder()
.text(plain_text!("option-0")?)
.value("value-0")
.build()?
)
.option(
Opt::builder()
.text(plain_text!("option-1")?)
.value("value-1")
.build()?
)
.build()?;
let expected = serde_json::json!({
"type": "overflow",
"action_id": "overflow_0",
"options": [
{
"text": {
"type": "plain_text",
"text": "option-0"
},
"value": "value-0"
},
{
"text": {
"type": "plain_text",
"text": "option-1"
},
"value": "value-1"
}
]
});
let json = serde_json::to_value(menu).unwrap();
assert_eq!(json, expected);
// If your object has any validation errors, the build method returns Result::Err
let menu = OverflowMenu::builder()
.action_id("overflow_0")
.build();
assert!(menu.is_err());Implementations§
Source§impl OverflowMenu
impl OverflowMenu
Sourcepub fn builder() -> OverflowMenuBuilder
pub fn builder() -> OverflowMenuBuilder
constract OverflowMenuBuilder object.
Trait Implementations§
Source§impl Clone for OverflowMenu
impl Clone for OverflowMenu
Source§fn clone(&self) -> OverflowMenu
fn clone(&self) -> OverflowMenu
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OverflowMenu
impl Debug for OverflowMenu
Source§impl From<OverflowMenu> for Accessory
impl From<OverflowMenu> for Accessory
Source§fn from(value: OverflowMenu) -> Self
fn from(value: OverflowMenu) -> Self
Converts to this type from the input type.
Source§impl From<OverflowMenu> for ActionsElement
impl From<OverflowMenu> for ActionsElement
Source§fn from(value: OverflowMenu) -> Self
fn from(value: OverflowMenu) -> Self
Converts to this type from the input type.
Source§impl PartialEq for OverflowMenu
impl PartialEq for OverflowMenu
Source§impl Serialize for OverflowMenu
impl Serialize for OverflowMenu
impl StructuralPartialEq for OverflowMenu
Auto Trait Implementations§
impl Freeze for OverflowMenu
impl RefUnwindSafe for OverflowMenu
impl Send for OverflowMenu
impl Sync for OverflowMenu
impl Unpin for OverflowMenu
impl UnwindSafe for OverflowMenu
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)