Sha256: 774ca215ea4be53f4eec3bee4ed8bf6f81883ebeb3c89d7ea04e5526e7916a31

Contents?: true

Size: 473 Bytes

Versions: 5

Compression:

Stored size: 473 Bytes

Contents

def log(x)
end

class A; end
class B; end
class C; end
class X; end
class Y; end
class Z; end

class Foo
  def f(x)
    log(self)
    X.new
  end
end

class Bar < Foo
  def f(x)
    super(C.new)
    Y.new
  end
end

class Baz < Bar
  def f(x)
    super(B.new)
    Z.new
  end
end

Baz.new.f(A.new)

__END__
# Classes
class Object
  def log : (Baz) -> nil
end

class Foo
  def f : (C) -> X
end

class Bar < Foo
  def f : (B) -> Y
end

class Baz < Bar
  def f : (A) -> Z
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
typeprof-0.1.4 smoke/super1.rb
typeprof-0.1.3 smoke/super1.rb
typeprof-0.1.2 smoke/super1.rb
typeprof-0.1.1 smoke/super1.rb
typeprof-0.1.0 smoke/super1.rb