ruby を勉強していますが、どういうわけか、いくつかのメソッドをプライベートとして定義すると、「undefined method private for class ...」というエラーが表示されます。以下にtmyコードを投稿します。どんな助けや提案もします!ありがとうございました :)
コード:
class Bot
attr_reader :name
def initialize(options)
@name = options[:name] || "Unnamed Bot"
begin
@data = YAML.load(File.read(options[:data_file]))
rescue
raise "Could not load bot data"
end
private
def random_response(key)
random_index = rand(@data[:responses][key].length)
@data[:responses][key][random_index].gsub(/\[name\]/, @name)
end
def greeting
random_response :greeting
end
def farewell
radnom_response :farewell
end
def response_to(input)
prepared_input = preprocess(input).downcase
end
def preprocess(input)
perform_substitutions input
end
end
end
エラー: