class Jaspion::Kilza::Java::Class
Attributes
gson[R]
gson?[R]
package[RW]
Represents the Java
class package
parcelable[R]
parcelable?[R]
serializable[R]
serializable?[R]
Public Class Methods
new(name, package = nil)
click to toggle source
Calls superclass method
Jaspion::Kilza::Class::new
# File lib/jaspion/kilza/language/java/class.rb, line 18 def initialize(name, package = nil) name = name + RESERVED_CLASS_POSFIX unless RESERVED_WORDS.index(name.downcase).nil? super(name) @package = package @implements = [] push_import('import org.json.*;') self.serializable = true self.parcelable = false self.gson = true end
Public Instance Methods
gson=(g)
click to toggle source
# File lib/jaspion/kilza/language/java/class.rb, line 50 def gson=(g) @gson = g v = %w( import\ com.google.gson.Gson; import\ com.google.gson.GsonBuilder; import\ com.google.gson.annotations.SerializedName; import\ com.google.gson.annotations.Expose; ) if (g) push_import(v) else delete_import(v) end end
implements()
click to toggle source
# File lib/jaspion/kilza/language/java/class.rb, line 46 def implements @implements.sort end
parcelable=(p)
click to toggle source
# File lib/jaspion/kilza/language/java/class.rb, line 67 def parcelable=(p) @parcelable = p v = 'import android.os.Parcelable;' if (p) push_implements('Parcelable') push_import(v) else implements.delete('Parcelable') delete_import(v) end end
push(pr)
click to toggle source
Calls superclass method
Jaspion::Kilza::Class#push
# File lib/jaspion/kilza/language/java/class.rb, line 32 def push(pr) pr.gson = gson? pr.type = pr.class_name if pr.object? || (pr.array? && pr.null?) push_import('import java.util.ArrayList;') if pr.array? pr.type = Jaspion::Kilza::Java::TYPES[pr.type] unless Jaspion::Kilza::Java::TYPES[pr.type].nil? super(pr) end
push_implements(implement)
click to toggle source
# File lib/jaspion/kilza/language/java/class.rb, line 42 def push_implements(implement) @implements.push(implement) end
serializable=(s)
click to toggle source
# File lib/jaspion/kilza/language/java/class.rb, line 80 def serializable=(s) @serializable = s v = 'import java.io.Serializable;' if (s) push_implements('Serializable') push_import(v) else implements.delete('Serializable') delete_import(v) end end
sources()
click to toggle source
# File lib/jaspion/kilza/language/java/class.rb, line 93 def sources [code('java', 'java')] end