Package org.agrona.generation
Class SpecialisationGenerator
- java.lang.Object
-
- org.agrona.generation.SpecialisationGenerator
-
public final class SpecialisationGenerator extends java.lang.Object
Specialise classes written for primitive type int for other primitive types by substitution.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SpecialisationGenerator.Substitution
Substitution to be performed on each code line.
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
COLLECTIONS_PACKAGE
private static java.lang.String
DST_DIR
private static java.lang.String
SRC_DIR
private static java.util.List<SpecialisationGenerator.Substitution>
SUBSTITUTIONS
private static java.lang.String
SUFFIX
-
Constructor Summary
Constructors Constructor Description SpecialisationGenerator()
Create a new instance.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
main(java.lang.String[] args)
Main method.static void
specialise(java.util.List<SpecialisationGenerator.Substitution> substitutions, java.lang.String packageName, java.lang.String srcClassName, java.lang.String srcDirName, java.lang.String dstDirName)
Specialise a class replacing int types based onSpecialisationGenerator.Substitution
s.
-
-
-
Field Detail
-
COLLECTIONS_PACKAGE
private static final java.lang.String COLLECTIONS_PACKAGE
- See Also:
- Constant Field Values
-
SRC_DIR
private static final java.lang.String SRC_DIR
- See Also:
- Constant Field Values
-
DST_DIR
private static final java.lang.String DST_DIR
- See Also:
- Constant Field Values
-
SUFFIX
private static final java.lang.String SUFFIX
- See Also:
- Constant Field Values
-
SUBSTITUTIONS
private static final java.util.List<SpecialisationGenerator.Substitution> SUBSTITUTIONS
-
-
Method Detail
-
main
public static void main(java.lang.String[] args) throws java.io.IOException
Main method.- Parameters:
args
- command line args.- Throws:
java.io.IOException
- in case of I/O error.
-
specialise
public static void specialise(java.util.List<SpecialisationGenerator.Substitution> substitutions, java.lang.String packageName, java.lang.String srcClassName, java.lang.String srcDirName, java.lang.String dstDirName) throws java.io.IOException
Specialise a class replacing int types based onSpecialisationGenerator.Substitution
s.- Parameters:
substitutions
- to be applied.packageName
- for the source and destination classes.srcClassName
- to be specialised.srcDirName
- containing the source file.dstDirName
- for where the generated file should be stored.- Throws:
java.io.IOException
- if an error occurs.
-
-