ExAST.Selector.Predicate (ExAST v0.11.0)

Copy Markdown View Source

Predicate used by ExAST.Selector.where/2.

Build predicates with ExAST.Selector.parent/1, ancestor/1, has_child/1, has_descendant/1, or has/1. Negate them with ExAST.Selector.not/1.

Summary

Types

relation()

@type relation() ::
  :parent
  | :ancestor
  | :has_child
  | :has_descendant
  | :any
  | :all
  | :follows
  | :precedes
  | :immediately_follows
  | :immediately_precedes
  | :first
  | :last
  | :nth
  | :captures
  | :comment
  | :comment_before
  | :comment_after
  | :comment_inside
  | :comment_inline

t()

@type t() :: %ExAST.Selector.Predicate{
  negated?: boolean(),
  pattern: ExAST.Pattern.pattern() | [t()] | pos_integer() | nil,
  relation: relation()
}