//! [`FirstAvailable`] - pick the first eligible candidate.
use ;
/// Picks the first available candidate.
///
/// This is the default strategy when no other is configured.
///
/// # Example
///
/// ```rust
/// use bubbles::saliency::{Candidate, FirstAvailable, SaliencyStrategy};
///
/// let mut s = FirstAvailable;
/// let candidates = vec![
/// Candidate { id: "a", available: false },
/// Candidate { id: "b", available: true },
/// Candidate { id: "c", available: true },
/// ];
/// assert_eq!(s.select(&candidates), Some(1));
/// ```
;