File: negative.rb

package info (click to toggle)
ruby-regexp-parser 2.11.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,092 kB
  • sloc: ruby: 6,891; makefile: 6; sh: 3
file content (22 lines) | stat: -rw-r--r-- 896 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# frozen_string_literal: true

module Regexp::Expression
  module Shared
    def negative?
      false
    end

    # not an alias so as to respect overrides of #negative?
    def negated?
      negative?
    end
  end

  Anchor::NonWordBoundary.class_eval       { def negative?; true                          end }
  Assertion::NegativeLookahead.class_eval  { def negative?; true                          end }
  Assertion::NegativeLookbehind.class_eval { def negative?; true                          end }
  CharacterSet.class_eval                  { def negative?; negative                      end }
  CharacterType::Base.class_eval           { def negative?; token.to_s.start_with?('non') end }
  PosixClass.class_eval                    { def negative?; type == :nonposixclass        end }
  UnicodeProperty::Base.class_eval         { def negative?; type == :nonproperty          end }
end