22# complementary SWIG stuff
33#
44
5- # add missing
6- setClass ("_p_std__vectorT_std__vectorT_double_std__allocatorT_double_t_t_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_p_t_t ", contains = 'ExternalReference')
5+ # Some build environments (notably when SWIG-generated R classes are incomplete)
6+ # do not define ExternalReference before this file is sourced.
7+ # Define a safe fallback so class extensions below can be registered.
8+ if (! methods :: isClass(" ExternalReference" )) {
9+ methods :: setClass ("ExternalReference ", representation(ref = "externalptr"))
10+ }
711
8- setClass ('_p_FeedforwardEnsemble ', contains = c('ExternalReference','_p_Ensemble'))
9- setClass ('_p_LSTMEnsemble ', contains = c('ExternalReference','_p_Ensemble'))
12+ # add missing
13+ if (! methods :: isClass(" _p_std__vectorT_std__vectorT_double_std__allocatorT_double_t_t_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_p_t_t" )) {
14+ methods :: setClass ("_p_std__vectorT_std__vectorT_double_std__allocatorT_double_t_t_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_p_t_t ", contains = "ExternalReference")
15+ }
1016
11- setClass (' _p_BackpropTrainer ' , contains = c(' ExternalReference','_p_Trainer' ))
12- setClass (' _p_ImprovedRPropTrainer ' , contains = c(' ExternalReference','_p_Trainer' ))
17+ if ( ! methods :: isClass( " _p_FeedforwardEnsemble " )) methods :: setClass (" _p_FeedforwardEnsemble " , contains = c(" ExternalReference", "_p_Ensemble" ))
18+ if ( ! methods :: isClass( " _p_LSTMEnsemble " )) methods :: setClass (" _p_LSTMEnsemble " , contains = c(" ExternalReference", "_p_Ensemble" ))
1319
14- setClass ('_p_RPropTrainer ', contains = c('ExternalReference','_p_Trainer'))
15- setClass ('_p_ARPropTrainer ', contains = c('ExternalReference','_p_Trainer'))
16- setClass ('_p_ADAMTrainer ', contains = c('ExternalReference','_p_Trainer'))
20+ if (! methods :: isClass(" _p_BackpropTrainer" )) methods :: setClass ("_p_BackpropTrainer ", contains = c("ExternalReference", "_p_Trainer"))
21+ if (! methods :: isClass(" _p_ImprovedRPropTrainer" )) methods :: setClass ("_p_ImprovedRPropTrainer ", contains = c("ExternalReference", "_p_Trainer"))
1722
18- setClass ('_p_ConvergenceCriterion ', contains=c('ExternalReference','_p_Criterion'))
23+ if (! methods :: isClass(" _p_RPropTrainer" )) methods :: setClass ("_p_RPropTrainer ", contains = c("ExternalReference", "_p_Trainer"))
24+ if (! methods :: isClass(" _p_ARPropTrainer" )) methods :: setClass ("_p_ARPropTrainer ", contains = c("ExternalReference", "_p_Trainer"))
25+ if (! methods :: isClass(" _p_ADAMTrainer" )) methods :: setClass ("_p_ADAMTrainer ", contains = c("ExternalReference", "_p_Trainer"))
1926
20- setClass (' _p_LSTMNetwork ' , contains = c(' ExternalReference','_p_Network' ))
27+ if ( ! methods :: isClass( " _p_ConvergenceCriterion " )) methods :: setClass (" _p_ConvergenceCriterion " , contains = c(" ExternalReference", "_p_Criterion" ))
2128
29+ if (! methods :: isClass(" _p_LSTMNetwork" )) methods :: setClass ("_p_LSTMNetwork ", contains = c("ExternalReference", "_p_Network"))
2230
2331# clean up:
2432# unload dynamic library once package is unloaded
2533#
26- .onUnload <- function (libpath ) {
34+ .onUnload <- function (libpath ) {
2735 library.dynam.unload(" bnnlib" , libpath )
28- }
36+ }
0 commit comments