Method: HTree::XMLDecl#initialize

Defined in:
lib/htree/leaf.rb

#initialize(version, encoding = nil, standalone = nil) ⇒ XMLDecl

Returns a new instance of XMLDecl.



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/htree/leaf.rb', line 6

def initialize(version, encoding=nil, standalone=nil)
  init_raw_string
  if /\A[a-zA-Z0-9_.:-]+\z/ !~ version
    raise HTree::Error, "invalid version in XML declaration: #{version.inspect}"
  end
  if encoding && /\A[A-Za-z][A-Za-z0-9._-]*\z/ !~ encoding
    raise HTree::Error, "invalid encoding in XML declaration: #{encoding.inspect}"
  end
  unless standalone == nil || standalone == true || standalone == false
    raise HTree::Error, "invalid standalone document declaration in XML declaration: #{standalone.inspect}"
  end
  @version = version
  @encoding = encoding
  @standalone = standalone
end