Sha256: f6d5e30068993b2f4d012190dfa01d393df9c2222e73df3ecc7936607d59d22d

Contents?: true

Size: 1.48 KB

Versions: 13

Compression:

Stored size: 1.48 KB

Contents

# @Opulent
module Opulent
  # @Compiler
  class Compiler
    # Generate the code for a while control structure
    #
    # @param node [Array] Node code generation data
    # @param indent [Fixnum] Size of the indentation to be added
    # @param context [Context] Processing environment data
    #
    def doctype_node(node, indent, context)
      value = case node[@value]
      when :"", :"html", :"5"
        "!DOCTYPE html"
      when :"1.1"
        '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"'
      when :strict
        '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"'
      when :frameset
        '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"'
      when :mobile
        '!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd"'
      when :basic
        '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd"'
      when :transitional
        '!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"'
      when :xml
        '?xml version="1.0" encoding="utf-8" ?'
      when :'xml ISO-8859-1'
        '?xml version="1.0" encoding="iso-8859-1" ?'
      end

      @node_stack << :doctype
      buffer_freeze "<#{value}>"
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
opulent-1.5.5 lib/opulent/compiler/doctype.rb
opulent-1.5.4 lib/opulent/compiler/doctype.rb
opulent-1.5.3 lib/opulent/compiler/doctype.rb
opulent-1.5.2 lib/opulent/compiler/doctype.rb
opulent-1.5.1 lib/opulent/compiler/doctype.rb
opulent-1.5.0 lib/opulent/compiler/doctype.rb
opulent-1.4.8 lib/opulent/compiler/doctype.rb
opulent-1.4.7 lib/opulent/compiler/doctype.rb
opulent-1.4.6 lib/opulent/compiler/doctype.rb
opulent-1.4.5 lib/opulent/compiler/doctype.rb
opulent-1.4.3 lib/opulent/compiler/doctype.rb
opulent-1.4.2 lib/opulent/compiler/doctype.rb
opulent-1.4.1 lib/opulent/compiler/doctype.rb