Skip to content

Releases: phax/jcodemodel

JCodeModel 3.3.0

25 Nov 07:05
Compare
Choose a tag to compare
  • Added check for package names so that no invalid package names can be created (issue #70 from @guiguilechat)
  • Added check to avoid creating classes existing in the "java.lang" package (issue #71 from @guiguilechat)
  • JLambdaMethodRef now works with arbitrary expressions as the left hand side

JCodeModel 3.2.4

25 Nov 07:04
Compare
Choose a tag to compare
  • Made class JavaUnicodeEscapeWriter publicly accessible
  • Extended enum constant ref API (issue #68 from @guiguilechat)

JCodeModel 3.2.3

25 Nov 07:03
Compare
Choose a tag to compare
  • Extended JTryBlock API to have more control.
  • Added support for try-with-resources support (issue #67 from @gmcfall)

JCodeModel 3.2.2

25 Nov 07:03
Compare
Choose a tag to compare

JCodeModel 3.2.1

25 Jan 09:08
Compare
Choose a tag to compare
  • Added var as reserved word
  • Made JReturn constructor public
  • Added JInvocation._this static method
  • Added IJExpression.castTo method
  • Added support to create final variables in for each loops
  • JExpr.dotClass now takes AbstractJType and not just AbstractJClass
  • Made constructors of subclasses of IJStatement public
  • No line breaks for annotations to parameters
  • Put each method parameter on a separate line if more than 3 parameters are present

JCodeModel 3.2.0

20 Oct 07:49
Compare
Choose a tag to compare
  • Introduced class JCMWriter that should be used to emit the outgoing Java files. This replaces codemodel.build and offers a more consistent API. Most existing method remain existing and deprecated and just forward to JCMWriter.
    • Instead of cm.build (...) use new JCMWriter (cm).build (...)
  • Extracted IJFormatter interface for better separation of concerns. JFormatter was moved to a sub-package
  • ProgressCodeWriter no longer needs an explicit PrintStream but a ProgressCodeWriter.IProgressTracker instead.
  • Default charset for Java classes is now UTF-8.
  • Added new JAnnotationUse method overloads that automatically pass value as the annotation parameter name (issue #64)

JCodeModel 3.1.0

20 Oct 07:50
Compare
Choose a tag to compare
  • Added AbstractJType._new()
  • Change return types of special JBlock methods to void to avoid chaining (issue #62) - incompatible change!
  • Added new JExpr.invokeThis and JExpr.invokeSuper static methods

JCodemodel 3.0.2

11 Apr 16:01
Compare
Choose a tag to compare
  • Fixed method resolution using direct class references (issue #58)
  • Added some additional JInvocation.arg... sanity methods
  • Enum constant argument list is now accessible

JCodemodel 3.0.1

25 Oct 17:12
Compare
Choose a tag to compare
  • Added explicit support for invoking super - thx to @heruan for pointing this out
  • Added possibility to create a lambda reference from an invocation (issue #56 and PR #57 from @heruan)

JCodemodel 3.0.0

07 Aug 06:28
Compare
Choose a tag to compare
  • Requires Java 8
  • Reworked #41 so that it is finally working in all cases
  • Add option for classes to not be imported (issue #51)
  • Fixed extra semicolon on Lambdas (issue #53)