# File text/format.rb, line 948 948: def initialize(arg = nil, &block) 949: case arg 950: when Text::Format 951: __create(arg.text) do 952: @columns = arg.columns 953: @tabstop = arg.tabstop 954: @first_indent = arg.first_indent 955: @body_indent = arg.body_indent 956: @format_style = arg.format_style 957: @left_margin = arg.left_margin 958: @right_margin = arg.right_margin 959: @extra_space = arg.extra_space 960: @tag_paragraph = arg.tag_paragraph 961: @tag_text = arg.tag_text 962: @abbreviations = arg.abbreviations 963: @nobreak = arg.nobreak 964: @nobreak_regex = arg.nobreak_regex 965: @text = arg.text 966: @hard_margins = arg.hard_margins 967: @split_words = arg.split_words 968: @split_rules = arg.split_rules 969: @hyphenator = arg.hyphenator 970: end 971: instance_eval(&block) unless block.nil? 972: when Hash 973: __create do 974: @columns = arg[:columns] || arg['columns'] || @columns 975: @tabstop = arg[:tabstop] || arg['tabstop'] || @tabstop 976: @first_indent = arg[:first_indent] || arg['first_indent'] || @first_indent 977: @body_indent = arg[:body_indent] || arg['body_indent'] || @body_indent 978: @format_style = arg[:format_style] || arg['format_style'] || @format_style 979: @left_margin = arg[:left_margin] || arg['left_margin'] || @left_margin 980: @right_margin = arg[:right_margin] || arg['right_margin'] || @right_margin 981: @extra_space = arg[:extra_space] || arg['extra_space'] || @extra_space 982: @text = arg[:text] || arg['text'] || @text 983: @tag_paragraph = arg[:tag_paragraph] || arg['tag_paragraph'] || @tag_paragraph 984: @tag_text = arg[:tag_text] || arg['tag_text'] || @tag_text 985: @abbreviations = arg[:abbreviations] || arg['abbreviations'] || @abbreviations 986: @nobreak = arg[:nobreak] || arg['nobreak'] || @nobreak 987: @nobreak_regex = arg[:nobreak_regex] || arg['nobreak_regex'] || @nobreak_regex 988: @hard_margins = arg[:hard_margins] || arg['hard_margins'] || @hard_margins 989: @split_rules = arg[:split_rules] || arg['split_rules'] || @split_rules 990: @hyphenator = arg[:hyphenator] || arg['hyphenator'] || @hyphenator 991: end 992: instance_eval(&block) unless block.nil? 993: when String 994: __create(arg, &block) 995: when NilClass 996: __create(&block) 997: else 998: raise TypeError 999: end 1000: end