% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/interface.R
\name{interface_requirements}
\alias{interface_requirements}
\alias{interface_report}
\alias{missing_requirements}
\alias{implements}
\alias{assert_implements}
\alias{as_interface}
\title{Inspect or check a Go-like structural interface}
\usage{
interface_requirements(interface, inherited = TRUE)

interface_report(x, interface)

missing_requirements(x, interface)

implements(x, interface)

assert_implements(x, interface, arg = deparse(substitute(x)))

as_interface(x, interface)
}
\arguments{
\item{interface}{An interface created by \code{new_interface()}.}

\item{inherited}{Include inherited requirements from parent interfaces?}

\item{x}{An object, or an S7 class/base class wrapper.}

\item{arg}{Name to use in error messages.}
}
\value{
\code{interface_requirements()} returns a named list of
\code{interface_requirement()} objects. \code{interface_report()} and
\code{missing_requirements()} return data frames. \code{implements()} returns a single
logical value. \code{assert_implements()} and \code{as_interface()} return \code{x},
unchanged.
}
\description{
Inspect or check a Go-like structural interface
}
