Я пытаюсь создать структуру потока в объекте, основанном на классе.У меня есть 4 метода (где 3 метода должны вызываться из метода [run ()].
Вопрос:
Если вы сможете вызывать метод из другогометод при условии, что вы находитесь в том же объекте / классе.
Что работает:
Я способен запускать следующие методы один за другим с правильным выводом:
game $ part_1 ()
game $ part_2 ()
game $ part_3 ()
Ошибки:
Когда я запускаю [game $ run ()], я получаю следующую ошибку:
Error in part_1() : could not find function "part_1"
Требуемое поведение:
Я хочу объектчтобы иметь возможность запускать методы, запускаемые другими методами (все методы находятся в одном классе).
if (!"package:R6" %in% search()) {
library(R6)
}
# Class
Game <- R6Class("Game",
public = list(
# Properties:
a = 0,
b = 0,
sum = 0,
# Functions:
run = function() {
part_1()
part_2()
part_3()
},
part_1 = function() {
self$a = 10
return(self$a)
},
part_2 = function() {
self$b = 20
return(self$b)
},
part_3 = function() {
self$sum = self$a + self$b
return(self$sum)
}
)
)
# Instantiate an object base on a class.
game <- Game$new()
# Run function that runs through all other functions.
game$run()