% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/rule-engine.R
\name{run_taxa_list}
\alias{run_taxa_list}
\title{Iterate a flat taxa list and evaluate tests in canonical order}
\usage{
run_taxa_list(pedon, taxa)
}
\arguments{
\item{pedon}{A \code{\link{PedonRecord}}.}

\item{taxa}{A list of taxon entries; each entry must have
\code{code}, \code{name}, and \code{tests} fields, where
\code{tests} is a block parseable by
\code{\link{evaluate_rsg_tests}}.}
}
\value{
A list with \code{assigned} (the entry of the assigned taxon,
        or NULL when \code{taxa} was empty) and \code{trace}.
}
\description{
Internal iterator extracted from \code{\link{run_taxonomic_key}} so
nested categorical levels (subordens, grandes grupos, subgrupos,
familias) can be iterated directly, without going through the
\code{rules[[level_key]]} indirection that only makes sense at the
top level.
}
\details{
Behavioural note: when \code{taxa} is empty or \code{NULL}, returns
\code{list(assigned = NULL, trace = list())} -- a sub-level lookup
with no canonical entries is non-fatal. The top-level
\code{\link{run_taxonomic_key}} keeps the stricter "missing list is
an error" semantics by guarding before calling this helper.
}
