Class: Vernacular::Modifiers::NumberSigil

Inherits:
RegexModifier show all
Defined in:
lib/vernacular/modifiers/number_sigil.rb

Overview

Extends Ruby syntax to allow number sigils, or ~n(…). The expression inside is parsed and evaluated, and is replaced by the result.

Instance Attribute Summary

Attributes inherited from RegexModifier

#block, #pattern, #replacement

Instance Method Summary collapse

Methods inherited from RegexModifier

#components, #modify

Constructor Details

#initializeNumberSigil

Returns a new instance of NumberSigil.



8
9
10
11
12
# File 'lib/vernacular/modifiers/number_sigil.rb', line 8

def initialize
  super(%r{~n\(([\d\s+-/*\(\)]+?)\)}) do |match|
    eval(match[3..-2]) # rubocop:disable Security/Eval
  end
end