Class: TwitterCldr::Transforms::Filters::UnicodeFilter
- Inherits:
-
FilterRule
- Object
- Rule
- FilterRule
- TwitterCldr::Transforms::Filters::UnicodeFilter
show all
- Defined in:
- lib/twitter_cldr/transforms/filters/unicode_filter.rb
Constant Summary
Constants inherited
from Rule
Rule::STRING_TYPES
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from FilterRule
#is_filter_rule?
Methods inherited from Rule
#invert, #is_comment?, #is_conversion_rule?, #is_conversion_rule_set?, #is_filter_rule?, #is_transform_rule?, #is_variable?, regexp_token_string, remove_comment, replace_symbols, #token_string, token_string, #token_value, token_value
Constructor Details
#initialize(charset, direction) ⇒ UnicodeFilter
Returns a new instance of UnicodeFilter.
52
53
54
55
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 52
def initialize(charset, direction)
@charset = charset
@direction = direction
end
|
Instance Attribute Details
#charset ⇒ Object
Returns the value of attribute charset.
50
51
52
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 50
def charset
@charset
end
|
#direction ⇒ Object
Returns the value of attribute direction.
50
51
52
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 50
def direction
@direction
end
|
Class Method Details
.accepts?(rule_text) ⇒ Boolean
27
28
29
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 27
def accepts?(rule_text)
!!(rule_text =~ /\A::[\s]*\(?[\s]*\[/)
end
|
.parse(rule_text, symbol_table) ⇒ Object
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 12
def parse(rule_text, symbol_table)
rule_text = Rule.(rule_text).strip
rule_text = rule_text[2..-2].strip if rule_text.start_with?('::')
direction = direction_for(rule_text)
re = TwitterCldr::Shared::UnicodeRegex.compile(
clean_rule(rule_text, direction)
)
new(re.elements.first.to_set.to_set, direction)
rescue => e
binding.irb
end
|
Instance Method Details
#backward? ⇒ Boolean
69
70
71
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 69
def backward?
direction == :backward
end
|
#forward? ⇒ Boolean
65
66
67
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 65
def forward?
direction == :forward
end
|
#matches?(cursor) ⇒ Boolean
61
62
63
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 61
def matches?(cursor)
charset.include?(cursor.text[cursor.position].ord)
end
|
#resolve(symbol_table) ⇒ Object
57
58
59
|
# File 'lib/twitter_cldr/transforms/filters/unicode_filter.rb', line 57
def resolve(symbol_table)
self
end
|