1+ require "forwardable"
12require "pattern_patch/core_ext"
23require "pattern_patch/patch"
34require "pattern_patch/utilities"
89#
910# @author Jimmy Dee (https://github.com/jdee)
1011module PatternPatch
12+ extend Forwardable
13+
1114 # Generic exception class for PatternPatch exceptions
1215 class Error < RuntimeError ; end
1316
1417 # Exception generated by patch method when patch_dir is not set properly
1518 class ConfigurationError < Error ; end
1619
1720 module Methods
21+ extend Forwardable
22+
1823 # @!attribute patch_dir
1924 # Set this to conveniently load patches from a common folder with
2025 # the patch method.
2126 # @return [String] Path to a directory for use with patch
2227 attr_accessor :patch_dir
2328
29+ # @!attribute safe_level
30+ # Set the default safe level to use with ERb. This is the same as the value
31+ # of PatternPatch.safe_level.
32+ # @return [Object, nil] The current default safe level for ERb
33+ def_delegator "PatternPatch" , :safe_level , :safe_level
34+ def_delegator "PatternPatch" , :safe_level= , :safe_level=
35+
36+ # @!attribute trim_mode
37+ # Set the default trim mode to use with ERb. This is the same as the value
38+ # of PatternPatch.trim_mode.
39+ # @return [String, nil] The current default trim mode for ERb
40+ def_delegator "PatternPatch" , :trim_mode , :trim_mode
41+ def_delegator "PatternPatch" , :trim_mode= , :trim_mode=
42+
2443 # Loads a patch from the patch_dir
2544 # @param name [#to_s] Name of a patch to load from the patch_dir
2645 # @return [Patch] A patch loaded from the patch_dir
@@ -32,5 +51,17 @@ def patch(name)
3251 end
3352 end
3453
54+ class << self
55+ # @!attribute safe_level
56+ # The default safe level to use with ERb. Defaults to nil.
57+ # @return [Object, nil] The current default safe level for ERb
58+ attr_accessor :safe_level
59+
60+ # @!attribute trim_mode
61+ # The default trim mode to use with ERb. Defaults to nil.
62+ # @return [String, nil] The current default trim mode for ERb
63+ attr_accessor :trim_mode
64+ end
65+
3566 extend Methods
3667end
0 commit comments