Я не могу использовать Proc, возвращенный valid_transaction
как аргумент в фильтре выбора, любые идеи почему? Я могу это сделать при написании методов без классов.Невозможно использовать Proc/lambda, возвращенный методом в фильтрах выбора/отклонения в Ruby
require 'json'
module Electrum
class History
def self.valid_transaction
lambda { |tx| tx["date"] == "----" }
end
def self.list
JSON::parse `electrum history`
end
def self.confirmed
list.reject { |tx| tx["date"] == "----" }
end
def self.unconfirmed
list.select(&:valid_transaction)
end
end
end
Этот вопрос можно улучшить, удалив self.confirmed, так как вам не нужно показывать проблему. Было бы также полезно дать читателю исходное место: «Когда я называю« Elecrum :: History.unconfirmed », я получаю эту синтаксическую ошибку: ...» –