Class JavaParsingVarHandleLinkedQueueGenerator

java.lang.Object
com.github.javaparser.ast.visitor.VoidVisitorAdapter<Void>
org.jctools.queues.varhandle.JavaParsingVarHandleQueueGenerator
org.jctools.queues.varhandle.JavaParsingVarHandleLinkedQueueGenerator
All Implemented Interfaces:
com.github.javaparser.ast.visitor.VoidVisitor<Void>, JCToolsGenerator
Direct Known Subclasses:
JavaParsingVarHandleUnpaddedLinkedQueueGenerator

public class JavaParsingVarHandleLinkedQueueGenerator extends JavaParsingVarHandleQueueGenerator
This generator takes in an JCTools 'LinkedQueue' Java source file and patches Unsafe accesses into VarHandle. It outputs a Java source file with these patches.

A 'LinkedQueue' is one that is backed by a linked list and uses a producerNode and a consumerNode field to track the positions of each.

  • Constructor Details

    • JavaParsingVarHandleLinkedQueueGenerator

      public JavaParsingVarHandleLinkedQueueGenerator(String sourceFileName)
  • Method Details

    • main

      public static void main(String[] args) throws Exception
      Throws:
      Exception
    • visit

      public void visit(com.github.javaparser.ast.body.ConstructorDeclaration n, Void arg)
      Specified by:
      visit in interface com.github.javaparser.ast.visitor.VoidVisitor<Void>
      Overrides:
      visit in class com.github.javaparser.ast.visitor.VoidVisitorAdapter<Void>
    • visit

      public void visit(com.github.javaparser.ast.body.ClassOrInterfaceDeclaration node, Void arg)
      Specified by:
      visit in interface com.github.javaparser.ast.visitor.VoidVisitor<Void>
      Overrides:
      visit in class com.github.javaparser.ast.visitor.VoidVisitorAdapter<Void>
    • visit

      public void visit(com.github.javaparser.ast.expr.CastExpr n, Void arg)
      Specified by:
      visit in interface com.github.javaparser.ast.visitor.VoidVisitor<Void>
      Overrides:
      visit in class com.github.javaparser.ast.visitor.VoidVisitorAdapter<Void>
    • visit

      public void visit(com.github.javaparser.ast.body.MethodDeclaration n, Void arg)
      Specified by:
      visit in interface com.github.javaparser.ast.visitor.VoidVisitor<Void>
      Overrides:
      visit in class com.github.javaparser.ast.visitor.VoidVisitorAdapter<Void>
    • visit

      public void visit(com.github.javaparser.ast.expr.ObjectCreationExpr n, Void arg)
      Specified by:
      visit in interface com.github.javaparser.ast.visitor.VoidVisitor<Void>
      Overrides:
      visit in class com.github.javaparser.ast.visitor.VoidVisitorAdapter<Void>