Sha256: 7e7773026a102db03443bf4c6e6b21613492c5667b9d03502630872ca1558522

Contents?: true

Size: 821 Bytes

Versions: 1

Compression:

Stored size: 821 Bytes

Contents

class Class
  def getAddedMethods(base=nil)
    begin
      b=""

      cmd="#{self.name}.new(::Crdf_Repository.new(),'abc')"
      c=eval cmd

      return  c.public_methods-b.public_methods
    rescue
      return []
    end

  end
end

# returns a completion file
# for methods, class and modules created by loadModule
def getCompletionFile(&loadModules)
  b=Array.new
  ObjectSpace.each_object(Class) { |o|
    b.push(o.to_s)
  }
  yield()
  ObjectSpace.each_object(Class) { |o|
    next if b.include?(o.to_s)
    next unless o.to_s.index('#').nil?
    s=String.new
    c=Class.new

    puts <<TPL
module #{o.name.gsub(/^C/,"M") }#{o.getAddedMethods.collect {|m|
    %{
    def #{m.to_s} ; end}
    }}
end
TPL
  }
end

require "erb"
getCompletionFile {
  require 'ontomde-uml2'
  m=Crdf_Repository.new
  m.loadUml2
}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ontomde-core-2.0.0 lib/ontomde-core/completion.rb