There are many ways how to define extension methods for existing types in Groovy, e.g. meta-class, categories, extension modules etc. I'd like to know, which of them are compatible with static compilation via @CompileStatic. I know that it is possible to put a pre-built extension module jar into the classpath providing an extension method for e.g. String and then write a @CompileStatic Groovy class which uses the extension methods from the extension module. However, I'd like to have a solution where I can define extension methods in the same project so that I don't have to build the extension module in advance. Is this possible in Groovy?
Groovy extension methods in statically compiled code
440 Views Asked by Werner Thumann At
1
There are 1 best solutions below
Related Questions in GROOVY
- spring-integration-dsl-groovy-http return null when i use httpGet method
- groovy xml namespace definition used in attribute value lost after XmlParse/serialize
- jenkins with groovy postbuild .Not able to execute anything in groovy script field
- How can I set the the expected Exception type for a catch statement with a parameter I've passed into a method?
- How to add quotes into sql where clause in Groovy script?
- integrating groovy with api
- java.util.ConcurrentModificationException on cloneEntity
- jenkins (or groovy) using pom.xml from previous execution
- How to use multiple classes in multiple files in scripts?
- How to work around Groovy's XmlSlurper refusing to parse HTML due to DOCTYPE and DTD restrictions?
- Workaround for lack of generators/yield keyword in Groovy
- Groovy's @CompileStatic and map constructors
- Java syntax to Groovy syntax
- Groovy TimeDuration Argument Types
- Elasticsearch : _score always 0 in Groovy script
Related Questions in EXTENSION-METHODS
- How to make extension method which should returns generic type but only nullable numeric datatype in vb.net
- How to extend string to deserialize binary data
- Adding new object property dynamically from extension method
- PHP Sibling Class Inheritance
- Creating a table method on a user defined type (like like 'nodes' on the XML data type)
- Why does this extension method not initialize the returned object?
- How do I make this Python extension work on windows (clear IDLE)?
- When/Why would I use an extension method in VB.Net?
- Extension methods, which is a better choice
- Extension Method for Interface in Internal Class
- Change state of List<T> inside extension method
- Inheritance and extension method
- Swift Dictionary access value using key within extension
- UIImage Extension Not Working Properly
- Swift3, extension to mutablizate a String array
Related Questions in COMPILE-STATIC
- trying to compile Qt with command configure -static give me an error
- Problem with Method reference operator and CompileStatic
- Why does the Groovy @TypeChecked annotation catch me putting a String into an int variable but not the other way around?
- Grails 2.5.0 static compilation, controllers and grails features
- Groovy extension methods in statically compiled code
- @CompileStatic: automatic type cast possible?
- Groovy static compilation fails for nested generics
- groovy: convert a list of interface implementation to a map with compileStatic
- Configure GrrovyClassLoader to honor @CompileStatic annotation
- Groovy 2.1.0 weird behaviour of switch-case-break statement with @CompileStatic
- Should I use Groovy's @CompileStatic if I'm also using Java 7
- Compilestatic annotation on an interceptor with data response
- Constructor cannot be applied to '(T)' error when using @CompileStatic and generic class
- Calling a closure from another when using @CompileStatic
- Error when referencing an attribute of type Map inside a closure
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Answer from tim_yates in the comments: Most probably not possible, see here.