.cstr_new_class()
and .cstr_new_constructor()
open new unsaved scripts,
optionally commented, that can be used as templates to define new constructors.
If the class is already supported and you want to implement a new constructor,
use .cstr_new_constructor()
, otherwise use .cstr_new_class()
.
Arguments
- class
Class to support, provide the full
class()
vector.- constructor
Name of the constructor, usually the name of the function you can to use to build the object. If not you might need to adjust the script.
- commented
Boolean. Whether to include comments in the template.
Details
We suggest the following workflow :
Call these functions, with
commented = TRUE
for more guidanceSave the scripts unchanged in your package
devtools::document()
: this will register the S3 methodsTry
construct()
on your new object, it should print a call to your chosen constructorTweak the code, in particular the definition of
args
The README of the example extension package
'constructive.example'
guides you through the process. See also {constructive}'s own code
and vignette("extend-constructive")
for more details.