lib/gm/notepad/table.rb in gm-notepad-0.0.16 vs lib/gm/notepad/table.rb in gm-notepad-0.0.17
- old
+ new
@@ -14,10 +14,12 @@
option :index_entry_prefix_regexp, default: -> { Container.resolve(:config).index_entry_prefix_regexp }
def initialize(*args)
super
@table = {}
+ @or_less = []
+ @or_more = []
set_null_table_column_set!
process(lines: lines)
end
def lookup(index: false, cell: false)
@@ -61,16 +63,30 @@
File.open(filename, "a") do |file|
file.puts(line)
end
end
+ def set_or_less_entry(table_entry)
+ @or_less = table_entry
+ end
+
+ def set_or_more_entry(table_entry)
+ @or_more = table_entry
+ end
+
private
def lookup_entry_by(index:)
begin
@table.fetch(index.to_s)
rescue KeyError
- raise MissingTableEntryError.new(table_name: table_name, index: index.to_s)
+ if @or_less.include?(index.to_s)
+ @or_less
+ elsif @or_more.include?(index.to_s)
+ @or_more
+ else
+ raise MissingTableEntryError.new(table_name: table_name, index: index.to_s)
+ end
end
end
def lookup_random_entry
@table.values[random_index]