Class: Google::Apis::TrafficdirectorV2::RegexMatcher
- Inherits:
-
Object
- Object
- Google::Apis::TrafficdirectorV2::RegexMatcher
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/trafficdirector_v2/classes.rb,
generated/google/apis/trafficdirector_v2/representations.rb,
generated/google/apis/trafficdirector_v2/representations.rb
Overview
A regex matcher designed for safety when used with untrusted input.
Instance Attribute Summary collapse
-
#google_re2 ⇒ Google::Apis::TrafficdirectorV2::GoogleRe2
Google's
RE2
_ regex engine. -
#regex ⇒ String
The regex match string.
Instance Method Summary collapse
-
#initialize(**args) ⇒ RegexMatcher
constructor
A new instance of RegexMatcher.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ RegexMatcher
Returns a new instance of RegexMatcher.
913 914 915 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 913 def initialize(**args) update!(**args) end |
Instance Attribute Details
#google_re2 ⇒ Google::Apis::TrafficdirectorV2::GoogleRe2
Google's RE2
_ regex engine. The regex string must adhere to the documented
syntax
_. The engine is designed to complete execution in linear time as well
as limit the amount of memory used. Envoy supports program size checking via
runtime. The runtime keys re2.max_program_size.error_level
and re2.
max_program_size.warn_level
can be set to integers as the maximum program
size or complexity that a compiled regex can have before an exception is
thrown or a warning is logged, respectively. re2.max_program_size.error_level
defaults to 100, and re2.max_program_size.warn_level
has no default if
unset (will not check/log a warning). Envoy emits two stats for tracking the
program size of regexes: the histogram re2.program_size
, which records the
program size, and the counter re2.exceeded_warn_level
, which is incremented
each time the program size exceeds the warn level threshold.
Corresponds to the JSON property googleRe2
906 907 908 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 906 def google_re2 @google_re2 end |
#regex ⇒ String
The regex match string. The string must be supported by the configured engine.
Corresponds to the JSON property regex
911 912 913 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 911 def regex @regex end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
918 919 920 921 |
# File 'generated/google/apis/trafficdirector_v2/classes.rb', line 918 def update!(**args) @google_re2 = args[:google_re2] if args.key?(:google_re2) @regex = args[:regex] if args.key?(:regex) end |