Skip to content

sake92/hepek-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hepek-core

Maven Central

Usage

  • Add to deps:
libraryDependencies ++= Seq(
  "ba.sake" % "hepek-core" % "0.2.0"
)

What is it?

Core of the sbt-hepek. This project contains two interfaces (Renderable and RelativePath) and a single helper class (ClassycleDependencyUtils).

Interfaces are essential to the sbt-hepek:

  • All objects that are meant to be rendered must extend Renderable
  • RelativePath is used for getting a relative path to a Renderable or another file (css, js or whatever)

The ClassycleDependencyUtils class has one handy method called reverseDependencies that returns Map[AtomicVertex, Set[AtomicVertex]]. Vertices here are actually Java bytecode classes.

It is used for optimized rendering of objects. When an object is changed and compiled, this method determines which other objects use it, so that they are rendered again too.

Special thanks to Classycle! :)