![](http://www.gnu-darwin.org/hexley-gd-sm.png)
|
# 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
|