Skip to content

mutkuensert/SafeCallJava

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 

Repository files navigation

SafeCallJava

A simple class to prevent NullPointerExceptions in Java

/**
 * Prevents [NullPointerException] in java
 */
object SafeCall {

    @JvmStatic
    fun <T : Any> get(block: () -> T): T? {
        return try {
            block.invoke()
        } catch (_: NullPointerException) {
            null
        }
    }
    
    @JvmStatic
    fun <T : Any> getOrElse(block: () -> T, default: T): T {
        return try {
            block.invoke()
        } catch (_: NullPointerException) {
            default
        }
    }

    @JvmStatic
    fun call(block: Runnable) {
        try {
            block.run()
        } catch (_: NullPointerException) {
        }
    }
}

Usage in Java

SafeCall.get(() -> getSomeObj().getProperty());

If getSomeObj method returns null, instead of throwing a NullPointerException, SafeCall::get will return null.

About

A simple class to prevent NullPointerExceptions in Java

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages