GenericShape

doodle.algebra.generic.GenericShape
trait GenericShape[G[_]] extends Shape

Attributes

Source
GenericShape.scala
Graph
Supertypes
trait Shape
trait Algebra
class Object
trait Matchable
class Any
Known subtypes
trait ReifiedShape
class Algebra
trait Shape
trait BaseAlgebra
class JvmAlgebra
Self type
Algebra { type Drawing = [A] =>> Finalized[G, A]; }

Members list

Type members

Classlikes

trait ShapeApi

Attributes

Source
GenericShape.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object ShapeApi
object ShapeApi

Inherited types

type Drawing[_]

The effect type that methods on this algebra produce. Represents an effect that, when run, will draw something and produce a value.

The effect type that methods on this algebra produce. Represents an effect that, when run, will draw something and produce a value.

Attributes

Inherited from:
Algebra
Source
Algebra.scala

Value members

Abstract methods

Attributes

Source
GenericShape.scala

Concrete methods

A circle with the given diameter. We use diamter rather than radius so circle(100) has the same size as square(100)

A circle with the given diameter. We use diamter rather than radius so circle(100) has the same size as square(100)

Attributes

Source
GenericShape.scala
def empty: Finalized[G, Unit]

The empty shape, which is no shape at all.

The empty shape, which is no shape at all.

Attributes

Source
GenericShape.scala

A rectangle with the given width and height.

A rectangle with the given width and height.

Attributes

Source
GenericShape.scala

A square with the given side length.

A square with the given side length.

Attributes

Source
GenericShape.scala

An isoceles triangle with the given width and height.

An isoceles triangle with the given width and height.

Attributes

Source
GenericShape.scala

Implicits

Inherited implicits

implicit val drawingInstance: Monad[Drawing]

Attributes

Inherited from:
Algebra
Source
Algebra.scala