module ERB::Util
def xml_name_escape(name)
Experimental RBS support (using type sampling data from the type_fusion
project).
def xml_name_escape: (String name) -> String
This signature was generated using 9 samples from 1 application.
# => "1___2___3"
xml_name_escape('1 < 2 & 3')
A utility method for escaping XML names of tags and names of attributes.
def xml_name_escape(name) name = name.to_s return "" if name.blank? return name if name.match?(SAFE_XML_TAG_NAME_REGEXP) starting_char = name[0] starting_char.gsub!(INVALID_TAG_NAME_START_REGEXP, TAG_NAME_REPLACEMENT_CHAR) return starting_char if name.size == 1 following_chars = name[1..-1] following_chars.gsub!(INVALID_TAG_NAME_FOLLOWING_REGEXP, TAG_NAME_REPLACEMENT_CHAR) starting_char << following_chars end