package jalview.datamodel.features; import jalview.datamodel.SequenceFeature; import jalview.util.matcher.MatcherI; /** * An interface for an object that can apply a match condition to a * SequenceFeature object * * @author gmcarstairs */ public interface FeatureMatcherI { /** * Answers true if the value provided for this matcher's key passes this * matcher's match condition * * @param feature * @return */ boolean matches(SequenceFeature feature); /** * Answers the attribute key this matcher operates on (or null if match is by * Label or Score) * * @return */ String[] getAttribute(); /** * Answers true if match is against feature label (description), else false * * @return */ boolean isByLabel(); /** * Answers true if match is against feature score, else false * * @return */ boolean isByScore(); /** * Answers the match condition that is applied * * @return */ MatcherI getMatcher(); }