Top Description Fields Constructors Methods
org.lwjgl.util.generator

public Class GeneratorVisitor

extends ElementKindVisitor6<Void, Void>
Class Inheritance
Imports
java.io.File, .FileInputStream, .IOException, .PrintWriter, java.lang.annotation.Annotation, java.nio.Buffer, .ByteBuffer, java.nio.channels.FileChannel, java.util.Collection, .List, javax.annotation.processing.ProcessingEnvironment, javax.lang.model.element.*, javax.lang.model.type.TypeKind, .TypeMirror, javax.lang.model.util.ElementKindVisitor6, javax.tools.Diagnostic, .Diagnostic.Kind, .FileObject, .StandardLocation

Generator visitor for the generator tool
Author
elias_naur
Version
$Revision$ $Id$

Field Summary

Modifier and TypeField and Description
private final boolean
private final ProcessingEnvironment
private final boolean
private final long
private final TypeMap

Constructor Summary

AccessConstructor and Description
public
GeneratorVisitor(ProcessingEnvironment env, TypeMap type_map, boolean generate_error_checks, boolean context_specific, long generatorLM)

Method Summary

Modifier and TypeMethod and Description
private void
private static void
private static void
private void
private static ByteBuffer
readFile(final File file)

private void
private void
private void
validateType(ExecutableElement method, Class<? extends Annotation> annotation_type, Class<T> type)

private void
validateTypes(ExecutableElement method, List<? extends AnnotationMirror> annotations, TypeMirror type_mirror)

public Void
visitTypeAsInterface(TypeElement
the element to visit
e
,
Void
a visitor-specified parameter
p
)

Overrides javax.lang.model.util.ElementKindVisitor6.visitTypeAsInterface.

Visits an INTERFACE type element.
Inherited from javax.lang.model.util.ElementKindVisitor6:
visitExecutablevisitExecutableAsConstructorvisitExecutableAsInstanceInitvisitExecutableAsMethodvisitExecutableAsStaticInitvisitPackagevisitTypevisitTypeAsAnnotationTypevisitTypeAsClassvisitTypeAsEnumvisitTypeAsRecordvisitTypeParametervisitVariablevisitVariableAsBindingVariablevisitVariableAsEnumConstantvisitVariableAsExceptionParametervisitVariableAsFieldvisitVariableAsLocalVariablevisitVariableAsParametervisitVariableAsResourceVariable

Field Detail

context_specificback to summary
private final boolean context_specific
envback to summary
private final ProcessingEnvironment env
generate_error_checksback to summary
private final boolean generate_error_checks
generatorLMback to summary
private final long generatorLM
type_mapback to summary
private final TypeMap type_map

Constructor Detail

GeneratorVisitorback to summary
public GeneratorVisitor(ProcessingEnvironment env, TypeMap type_map, boolean generate_error_checks, boolean context_specific, long generatorLM)

Method Detail

generateJavaSourceback to summary
private void generateJavaSource(TypeElement d, PrintWriter java_writer) throws IOException
generateMethodNativePointersback to summary
private static void generateMethodNativePointers(PrintWriter writer, ExecutableElement method)
generateMethodsNativePointersback to summary
private static void generateMethodsNativePointers(PrintWriter writer, Collection<? extends ExecutableElement> methods)
generateNativeSourceback to summary
private void generateNativeSource(TypeElement d) throws IOException
readFileback to summary
private static ByteBuffer readFile(final File file) throws IOException
validateMethodback to summary
private void validateMethod(ExecutableElement method)
validateParametersback to summary
private void validateParameters(ExecutableElement method)
validateTypeback to summary
private void validateType(ExecutableElement method, Class<? extends Annotation> annotation_type, Class<T> type)
validateTypesback to summary
private void validateTypes(ExecutableElement method, List<? extends AnnotationMirror> annotations, TypeMirror type_mirror)
visitTypeAsInterfaceback to summary
public Void visitTypeAsInterface(TypeElement e, Void p)

Overrides javax.lang.model.util.ElementKindVisitor6.visitTypeAsInterface.

Doc from javax.lang.model.util.ElementKindVisitor6.visitTypeAsInterface.

Visits an INTERFACE type element.

Parameters
e:TypeElement

the element to visit

p:Void

a visitor-specified parameter

Returns:Void

the result of defaultAction

Annotations
@Override