Class: Jaspion::Kilza::Java::Class

Inherits:
Object
  • Object
show all
Includes:
Class
Defined in:
lib/jaspion/kilza/language/java/class.rb

Instance Attribute Summary collapse

Attributes included from Class

#name, #properties

Instance Method Summary collapse

Methods included from Class

#code, #delete_import, #imports, #push_import, #to_s

Constructor Details

#initialize(name, package = nil) ⇒ Class

Returns a new instance of Class.



18
19
20
21
22
23
24
25
26
27
28
29
30
# 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

Instance Attribute Details

#gsonObject Also known as: gson?

Returns the value of attribute gson.



10
11
12
# File 'lib/jaspion/kilza/language/java/class.rb', line 10

def gson
  @gson
end

#packageObject

Represents the Java class package



8
9
10
# File 'lib/jaspion/kilza/language/java/class.rb', line 8

def package
  @package
end

#parcelableObject Also known as: parcelable?

Returns the value of attribute parcelable.



12
13
14
# File 'lib/jaspion/kilza/language/java/class.rb', line 12

def parcelable
  @parcelable
end

#serializableObject Also known as: serializable?

Returns the value of attribute serializable.



11
12
13
# File 'lib/jaspion/kilza/language/java/class.rb', line 11

def serializable
  @serializable
end

Instance Method Details

#implementsObject



46
47
48
# File 'lib/jaspion/kilza/language/java/class.rb', line 46

def implements
  @implements.sort
end

#push(pr) ⇒ Object



32
33
34
35
36
37
38
39
40
# 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) ⇒ Object



42
43
44
# File 'lib/jaspion/kilza/language/java/class.rb', line 42

def push_implements(implement)
  @implements.push(implement)
end

#sourcesObject



93
94
95
# File 'lib/jaspion/kilza/language/java/class.rb', line 93

def sources
  [code('java', 'java')]
end