% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/duckhts.R
\name{rduckhts_gtf_multi}
\alias{rduckhts_gtf_multi}
\title{Read multiple GTF files into a DuckDB table}
\usage{
rduckhts_gtf_multi(
  con,
  table_name,
  files,
  region = NULL,
  index_path = NULL,
  header = NULL,
  header_names = NULL,
  auto_detect = NULL,
  column_types = NULL,
  scan_mode = NULL,
  attributes_map = FALSE,
  attributes_list = FALSE,
  attributes_pairs = FALSE,
  .params = NULL,
  overwrite = FALSE
)
}
\arguments{
\item{con}{A DBI connection to DuckDB with the duckhts extension loaded.}

\item{table_name}{Name of the DuckDB table to create.}

\item{files}{Character vector of file paths or glob patterns.}

\item{region}{Optional region string.}

\item{index_path}{Optional index file path.}

\item{header}{Logical or NULL; whether the file has a header line.}

\item{header_names}{Character vector of column names.}

\item{auto_detect}{Logical or NULL; enable type auto-detection.}

\item{column_types}{Character vector of column type names.}

\item{scan_mode}{Optional scan mode (\code{"auto"} or \code{"sequential"}).}

\item{attributes_map}{Logical; return raw attributes as a scalar MAP.}

\item{attributes_list}{Logical; return attributes as MAP(VARCHAR, VARCHAR[]).}

\item{attributes_pairs}{Logical; return attributes as a LIST of key/value/index structs.}

\item{.params}{Optional data.frame with per-file parameter overrides.}

\item{overwrite}{Logical; if \code{TRUE}, replace an existing table.}
}
\value{
Invisible \code{TRUE} on success.
}
\description{
Read and combine multiple GTF files via UNION ALL BY NAME,
materialising the result as a DuckDB table.
Each row includes a \code{filename} column identifying its source file.
}
