Class: SublimeDSL::SublimeText::KeyMap::Context
- Inherits:
-
Object
- Object
- SublimeDSL::SublimeText::KeyMap::Context
- Includes:
- Tools::ValueEquality
- Defined in:
- lib/sublime_dsl/sublime_text/keymap.rb
Defined Under Namespace
Classes: Condition
Instance Attribute Summary collapse
-
#conditions ⇒ Object
(also: #value_id)
readonly
Returns the value of attribute conditions.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(conditions = []) ⇒ Context
constructor
A new instance of Context.
- #to_dsl ⇒ Object
- #to_s ⇒ Object
Methods included from Tools::ValueEquality
Constructor Details
#initialize(conditions = []) ⇒ Context
Returns a new instance of Context.
210 211 212 |
# File 'lib/sublime_dsl/sublime_text/keymap.rb', line 210 def initialize(conditions = []) @conditions = conditions end |
Instance Attribute Details
#conditions ⇒ Object (readonly) Also known as: value_id
Returns the value of attribute conditions.
208 209 210 |
# File 'lib/sublime_dsl/sublime_text/keymap.rb', line 208 def conditions @conditions end |
Class Method Details
.from_json(array) ⇒ Object
204 205 206 |
# File 'lib/sublime_dsl/sublime_text/keymap.rb', line 204 def self.from_json(array) new array.map { |h| Condition.new(h['key'], h['operator'], h['operand'], h['match_all']) } end |
Instance Method Details
#to_dsl ⇒ Object
218 219 220 221 222 223 224 225 226 227 |
# File 'lib/sublime_dsl/sublime_text/keymap.rb', line 218 def to_dsl dsl = [] method = 'si' conditions.each do |c| c.fixmes.each { |f| dsl << f } dsl << "#{method} #{c.to_dsl}" method = 'et' end dsl.join("\n") end |
#to_s ⇒ Object
214 215 216 |
# File 'lib/sublime_dsl/sublime_text/keymap.rb', line 214 def to_s conditions.map(&:to_s).join(' && ') end |