module REXML::Namespace
Adds named attributes to an object.
Constants
- NAMESPLIT
- NAME_WITHOUT_NAMESPACE
Attributes
The name of the object, valid if set
The name of the object, valid if set
The name of the object, valid if set
The expanded name of the object, valid if name is set
Public Instance Methods
Source
# File lib/rexml/namespace.rb, line 57 def fully_expanded_name ns = prefix return "#{ns}:#@name" if ns.size > 0 return @name end
Fully expand the name, even if the prefix wasn’t specified in the source file.
Source
# File lib/rexml/namespace.rb, line 43 def has_name?( other, ns=nil ) if ns return (namespace() == ns and name() == other) elsif other.include? ":" return fully_expanded_name == other else return name == other end end
Compares names optionally WITH namespaces
Source
# File lib/rexml/namespace.rb, line 17 def name=( name ) @expanded_name = name if name.match?(NAME_WITHOUT_NAMESPACE) @prefix = "" @namespace = "" @name = name elsif name =~ NAMESPLIT if $1 @prefix = $1 else @prefix = "" @namespace = "" end @name = $2 elsif name == "" @prefix = nil @namespace = nil @name = nil else message = "name must be \#{PREFIX}:\#{LOCAL_NAME} or \#{LOCAL_NAME}: " message += "<#{name.inspect}>" raise ArgumentError, message end end
Sets the name and the expanded name