Parent

Included Modules

Files

Class Index [+]

Quicksearch

XSD::CodeGen::MethodDef

Attributes

definition[RW]

Public Class Methods

new(name, *params) click to toggle source
    # File lib/xsd/codegen/methoddef.rb, line 23
23:   def initialize(name, *params)
24:     klass, mname = name.split('.', 2)
25:     if mname.nil?
26:       mname, klass = klass, mname
27:     end
28:     unless safemethodname?(mname)
29:       raise ArgumentError.new("name '#{name}' seems to be unsafe")
30:     end
31:     if klass and klass != 'self' and !safeconstname(klass)
32:       raise ArgumentError.new("name '#{name}' seems to be unsafe")
33:     end
34:     @name = name
35:     @params = params
36:     @comment = nil
37:     @definition = yield if block_given?
38:   end

Public Instance Methods

dump() click to toggle source
    # File lib/xsd/codegen/methoddef.rb, line 40
40:   def dump
41:     buf = ""
42:     buf << dump_comment if @comment
43:     buf << dump_method_def
44:     buf << dump_definition if @definition and !@definition.empty?
45:     buf << dump_method_def_end
46:     buf
47:   end

Private Instance Methods

dump_definition() click to toggle source
    # File lib/xsd/codegen/methoddef.rb, line 63
63:   def dump_definition
64:     format(@definition, 2)
65:   end
dump_method_def() click to toggle source
    # File lib/xsd/codegen/methoddef.rb, line 51
51:   def dump_method_def
52:     if @params.empty?
53:       format("def #{@name}")
54:     else
55:       format("def #{@name}(#{@params.join(", ")})")
56:     end
57:   end
dump_method_def_end() click to toggle source
    # File lib/xsd/codegen/methoddef.rb, line 59
59:   def dump_method_def_end
60:     format("end")
61:   end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.