Package io.github.chrimle.classforge
Interface Builder<T extends Builder<T>>
- All Known Implementing Classes:
AbstractBuilder
,ClassBuilder
,EnumBuilder
Builder of a Java class - which MAY generate a
class
, enum
or
record
.- Since:
- 0.1.0
- Author:
- Chrimle
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic enum
The placement of version information in generated classes. -
Method Summary
Modifier and TypeMethodDescriptioncommit()
Commits the currently uncommitted changes as a new class.commit
(SemVer.Change change) Commits the currently uncommitted changes as a new class.Sets thesemVer
of the currently uncommitted class.setVersionPlacement
(Builder.VersionPlacement versionPlacement) Sets theversionPlacement
of the currently uncommitted class.updateClassName
(String className) Updates theclassName
of the currently uncommitted class.updateDirectory
(String directory) Updates thedirectory
of the currently uncommitted class.updatePackageName
(String packageName) Updates thepackageName
of the currently uncommitted class.
-
Method Details
-
setVersionPlacement
Sets theversionPlacement
of the currently uncommitted class.Default:
Builder.VersionPlacement.NONE
.- Parameters:
versionPlacement
- for the class.- Returns:
- this
Builder
. - Since:
- 0.3.0
-
setSemVer
Sets thesemVer
of the currently uncommitted class.NOTE: the
semVer
will be updated when committing the changes.- Parameters:
semVer
- for the class.- Returns:
- this
Builder
. - Since:
- 0.5.0
-
updateDirectory
Updates thedirectory
of the currently uncommitted class.- Parameters:
directory
- of the class.- Returns:
- this
Builder
. - Since:
- 0.1.0
-
updateClassName
Updates theclassName
of the currently uncommitted class.- Parameters:
className
- of the class.- Returns:
- this
Builder
. - Since:
- 0.1.0
-
updatePackageName
Updates thepackageName
of the currently uncommitted class.- Parameters:
packageName
- of the class.- Returns:
- this
Builder
. - Since:
- 0.1.0
-
commit
T commit()Commits the currently uncommitted changes as a new class. ThesemVer
of the new class will be set automatically.- Returns:
- this
Builder
. - Since:
- 0.1.0
-
commit
Commits the currently uncommitted changes as a new class. ThesemVer
of the new class will be set according to the givenchange
.- Parameters:
change
- for the newsemVer
.- Returns:
- this
Builder
- Since:
- 0.5.0
-