Skip to content

GrowlyX/reflektion

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

reflektion

Minimalistic class proxy creator for Kotlin.

  • Reflektion allows you to create an implementation of an interface you provide containing proxy methods.
    • When these methods are executed, the method in your original class will be called with the arguments you supplied.
  • Reflektion is NOT meant to be used in any production environment.
  • Reflektion caches internal reflections!

Possible use cases:

  • Create proxy methods for internal net.minecraft.server classes.

Usage:

fun test()
{
    val original = OriginalClass()

    val proxied = Reflekt
        .map<ProxiedOriginalClass>(original)

    proxied.sendMessageProxied("test!")
}

class OriginalClass
{
    fun sendMessage(message: String)
    {
        println(message)
    }
}

interface ProxiedOriginalClass
{
    // A value for the original method 
    // name is not required.
    @Mapping("sendMessage")
    fun sendMessageProxied(message: String)
}

About

Kotlin-based class proxy creator.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages