class Squash::Java::Class

Represents a Java class or inner class.

Attributes

classes[R]

@return [Array<Squash::Java::Class>] The inner classes of this class.

java_methods[R]

@return [Array<Squash::Java::Method>] The instance methods of this class.

obfuscation[RW]

@return [String, nil] The obfuscated name of this class.

parent[R]

@return [Squash::Java::Class, Squash::Java::Package] The parent package (or

parent class for inner classes).
path[RW]

@return [String] The path to the .java file defining this class, relative to

the project root.

@see Squash::Java::Namespace#find_files

Public Class Methods

new(parent, name) click to toggle source

@private

# File lib/squash/java/namespace.rb, line 433
def initialize(parent, name)
  @parent       = parent
  @java_methods = Set.new
  @classes      = Array.new
  @name         = name

  @parent.classes << self
end

Public Instance Methods

full_name() click to toggle source

@return [String] The name of this class (with package and parent class

names).
# File lib/squash/java/namespace.rb, line 445
def full_name
  "#{parent.full_name}.#{name}"
end
subpath() click to toggle source

@private

# File lib/squash/java/namespace.rb, line 450
def subpath() parent.kind_of?(Squash::Java::Package) ? "#{parent.subpath}/#{name}.java" : parent.subpath end