\name{funArg-class} \docType{class} \alias{funArg-class} \alias{funArg} \alias{argDefault} \alias{argLocation} \alias{argName} \alias{argRequired} \alias{argType} \alias{argWidgetType} \alias{argDefault,funArg-method} \alias{argLocation,funArg-method} \alias{argName,funArg-method} \alias{argRequired,funArg-method} \alias{argType,funArg-method} \alias{argWidgetType,funArg-method} \title{Class "funArg": A Class To Represent A Function Argument} \description{ This class is used by the \code{widgetInvoke} to represent the necessary information for creation of widgets for a function argument. Each argument for a function maps to an object of class \code{funArg}, and stored as a list with the others in the \code{funArgList} slot of the appropriate \code{wFun} object. } \section{Objects from the Class}{ Objects can be created by calls of the form \code{new("funArg", ...)}. } \section{Slots}{ \describe{ \item{\code{argName}:}{Object of class \code{"character"}: The name of the argument} \item{\code{argDefault}:}{Object of class \code{"character"}: The default value of the argument.} \item{\code{argType}:}{Object of class \code{"character"}: The type of the argument (e.g. numeric, character, logical)} \item{\code{argLocation}:}{Object of class \code{"character"}: Which pane of the widget notebook to display this argument.} \item{\code{argWidgetType}:}{Object of class \code{"character"}: What type of widget to use in displaying this argument.} \item{\code{argRequired}:}{Object of class \code{"logical"}: Whether or not this argument is required to have a value for function evaluation.} } } \section{Methods}{ \describe{ \item{argDefault}{\code{signature(object = "funArg")}: Retrieves the argDefault slot.} \item{argLocation}{\code{signature(object = "funArg")}: Retrieves the argLocation slot.} \item{argName}{\code{signature(object = "funArg")}: Retrieves the argName slot.} \item{argRequired}{\code{signature(object = "funArg")}: Retrieves the argRequired slot.} \item{argType}{\code{signature(object = "funArg")}: Retrieves the argType slot.} \item{argWidgetType}{\code{signature(object = "funArg")}: Retrieves the argWidgetType slot} } } \details{ The \code{argType} slot can specify a particular type, or use the string \code{ANY} to allow this argument to be untyped. When using the \code{fun2wFun} function, the default for a \code{funArg} object is that if there is no \code{argDefault} specified by the function, there will be no \code{argType}. Likewise, if there is an \code{argDefault}, the \code{argType} will be of the same type. } \author{Jeff Gentry} \seealso{\code{\link{createWF}}, \code{\link{widgetInvoke}}, \code{\link{wFun}}} \examples{ z <- readWIxml(system.file("wFun-example", "apropos.xml", package="widgetInvoke")) a <- funArgList(z)[[1]] argRequired(a) argName(a) argType(a) } \keyword{classes}