Module: Cheri::Java::Builder

Defined in:
lib/cheri/java/builder/main.rb,
lib/cheri/java/builder/util.rb

Defined Under Namespace

Modules: CheriYieldFactory, CherifyFactory, Constants, EventMethodConsumer, GenericConsumer, Interfaces, Types, Util Classes: BaseBuilder, CheriYieldBuilder, CherifyBuilder, ClassBuilder, ConstantResolver, GenericBuilderFactory, GenericCheriYieldBuilder, GenericCherifyBuilder, GenericClassBuilder, PackageFactory, ProcBuilder

Constant Summary collapse

CJava =

:stopdoc:

Cheri::Java
CBuilder =
Cheri::Builder
DefaultFactory =

CheriYieldFactory

Cheri::Builder::SuperFactory.new do |f|
  f << CherifyFactory  
  f << CheriYieldFactory
end
DefaultConnecter =

The Java connecter of last resort

Cheri::Builder::TypeConnecter.new do
  U = Cheri::Java::Builder::Util

  type java.lang.Object do
    connect java.lang.Object do |parent,obj,sym,props|
      snd = U.setter?(s = sym.to_s) ? sym : U.setter(s)
      if parent.respond_to?(snd) ||
          parent.respond_to?(snd = s << ?= ) ||
          parent.respond_to?(snd = :add)
        #puts "Java::DefaultConnecter for #{parent},\n #{obj}: #{snd}"

        parent.__send__(snd,obj) rescue nil
      end    
    end  
  end

end
DefaultConsumer =

EventMethodConsumer

Cheri::Builder::SuperConsumer.new do |cns|
  cns << EventMethodConsumer
  cns << GenericConsumer
end

Class Method Summary collapse

Class Method Details

.append_features(clazz) ⇒ Object



35
36
37
38
# File 'lib/cheri/java/builder/main.rb', line 35

def append_features(clazz)
  CBuilder.module_included(self,clazz)
  super
end

.connecterObject



49
50
51
# File 'lib/cheri/java/builder/main.rb', line 49

def connecter
  DefaultConnecter
end

.consumerObject



45
46
47
# File 'lib/cheri/java/builder/main.rb', line 45

def consumer
  DefaultConsumer  
end

.factoryObject



41
42
43
# File 'lib/cheri/java/builder/main.rb', line 41

def factory
  DefaultFactory  
end

.resolverObject



53
54
# File 'lib/cheri/java/builder/main.rb', line 53

def resolver
end