% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/consensus_annotation.R
\name{extract_positional_annotation}
\alias{extract_positional_annotation}
\title{Extract one line's annotation content for positional mapping}
\usage{
extract_positional_annotation(line, all_clusters)
}
\arguments{
\item{line}{Single response line.}

\item{all_clusters}{Character vector of requested cluster IDs.}
}
\value{
Annotation content string, or \code{NULL} to drop the line.
}
\description{
Returns \code{NULL} only for lines that do not occupy a cluster slot: an
empty-value preamble/header (\code{"Notes:"}) and an explicit label for an
unrequested/nonexistent cluster (\code{"Cluster 999: Noise"}). Every other
line -- including a sentinel such as \code{"Unknown"} -- keeps its slot so
the line->cluster correspondence is preserved (the caller leaves a
non-real slot unassigned). A numbered-list ordinal (\code{"1. T cells"}) or
a resolvable label prefix (\code{"0: T cells"}) is stripped to its content;
a colon that is part of the annotation (\code{"Neurons: excitatory"}) is
kept whole.
}
\keyword{internal}
