Class: REXML::Instruction
- Defined in:
- lib/extensions/rexml/rexml/instruction.rb,
lib/extensions/rhoxml/rexml/instruction.rb
Overview
Represents an XML Instruction; IE, <? … ?> TODO: Add parent arg (3rd arg) to constructor
Constant Summary collapse
- START =
'<\?'
- STOP =
'\?>'
Instance Attribute Summary collapse
-
#content ⇒ Object
target is the “name” of the Instruction; IE, the “tag” in <?tag …?> content is everything else.
-
#target ⇒ Object
target is the “name” of the Instruction; IE, the “tag” in <?tag …?> content is everything else.
Attributes inherited from Child
Instance Method Summary collapse
-
#==(other) ⇒ Object
of the other matches the target and content of this object.
- #clone ⇒ Object
-
#initialize(target, content = nil) ⇒ Instruction
constructor
Constructs a new Instruction the target of this instruction is set to this.
- #inspect ⇒ Object
- #node_type ⇒ Object
-
#write(writer, indent = -1,, transitive = false, ie_hack = false) ⇒ Object
DEPRECATED See the rexml/formatters package.
Methods inherited from Child
#bytes, #document, #next_sibling=, #previous_sibling=, #remove, #replace_with
Methods included from Node
#each_recursive, #find_first_recursive, #indent, #index_in_parent, #next_sibling_node, #parent?, #previous_sibling_node, #to_s
Constructor Details
#initialize(target, content = nil) ⇒ Instruction
Constructs a new Instruction the target of this instruction is set to this. If an Instruction, then the Instruction is shallowly cloned (target and content are copied). If a Source, then the source is scanned and parsed for an Instruction declaration. be a Parent if the target argument is a Source. Otherwise, this String is set as the content of this instruction.
24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/extensions/rexml/rexml/instruction.rb', line 24 def initialize(target, content=nil) if target.kind_of? String super() @target = target @content = content elsif target.kind_of? Instruction super(content) @target = target.target @content = target.content end @content.strip! if @content end |
Instance Attribute Details
#content ⇒ Object
target is the “name” of the Instruction; IE, the “tag” in <?tag …?> content is everything else.
13 14 15 |
# File 'lib/extensions/rexml/rexml/instruction.rb', line 13 def content @content end |
#target ⇒ Object
target is the “name” of the Instruction; IE, the “tag” in <?tag …?> content is everything else.
13 14 15 |
# File 'lib/extensions/rexml/rexml/instruction.rb', line 13 def target @target end |
Instance Method Details
#==(other) ⇒ Object
of the other matches the target and content of this object.
56 57 58 59 60 |
# File 'lib/extensions/rexml/rexml/instruction.rb', line 56 def ==( other ) other.kind_of?( Instruction ) and other.target == @target and other.content == @content end |
#clone ⇒ Object
37 38 39 |
# File 'lib/extensions/rexml/rexml/instruction.rb', line 37 def clone Instruction.new self end |
#inspect ⇒ Object
66 67 68 |
# File 'lib/extensions/rexml/rexml/instruction.rb', line 66 def inspect "<?p-i #{target} ...?>" end |
#node_type ⇒ Object
62 63 64 |
# File 'lib/extensions/rexml/rexml/instruction.rb', line 62 def node_type :processing_instruction end |
#write(writer, indent = -1,, transitive = false, ie_hack = false) ⇒ Object
DEPRECATED
See the rexml/formatters package
44 45 46 47 48 49 50 51 52 |
# File 'lib/extensions/rexml/rexml/instruction.rb', line 44 def write writer, indent=-1, transitive=false, ie_hack=false Kernel.warn( "#{self.class.name}.write is deprecated" ) indent(writer, indent) writer << START.sub(/\\/u, '') writer << @target writer << ' ' writer << @content writer << STOP.sub(/\\/u, '') end |