class XSD::CodeGen::MethodDef
Attributes
definition[RW]
Public Class Methods
new(name, *params) { || ... }
click to toggle source
# File lib/xsd/codegen/methoddef.rb, line 24 def initialize(name, *params) klass, mname = name.split('.', 2) if mname.nil? mname, klass = klass, mname end unless safemethodname?(mname) raise ArgumentError.new("name '#{name}' seems to be unsafe") end if klass and klass != 'self' and !safeconstname(klass) raise ArgumentError.new("name '#{name}' seems to be unsafe") end @name = name @params = params @comment = nil @definition = yield if block_given? end
Public Instance Methods
dump()
click to toggle source
# File lib/xsd/codegen/methoddef.rb, line 41 def dump buf = "" buf << dump_comment if @comment buf << dump_method_def buf << dump_definition if @definition and !@definition.empty? buf << dump_method_def_end buf end
Private Instance Methods
dump_definition()
click to toggle source
# File lib/xsd/codegen/methoddef.rb, line 64 def dump_definition format(@definition, 2) end
dump_method_def()
click to toggle source
# File lib/xsd/codegen/methoddef.rb, line 52 def dump_method_def if @params.empty? format("def #{@name}") else format("def #{@name}(#{@params.join(", ")})") end end
dump_method_def_end()
click to toggle source
# File lib/xsd/codegen/methoddef.rb, line 60 def dump_method_def_end format("end") end