
[ Class com.github.javaparser.ast.type.PrimitiveType ]
  superclass: com.github.javaparser.ast.type.Type
  superclass: com.github.javaparser.ast.Node
  superclass: java.lang.Object
  interface: java.lang.Cloneable
  Line 47) new ClassOrInterfaceType(nameOfBoxedType) ==> com.github.javaparser.ast.type.ClassOrInterfaceType
  Line 51) this.nameOfBoxedType = nameOfBoxedType ==> java.lang.String
  Line 55) new HashMap<String, Primitive>() ==> java.util.HashMap<java.lang.String, com.github.javaparser.ast.type.PrimitiveType.Primitive>
  Line 57) Primitive unboxedType ==> com.github.javaparser.ast.type.PrimitiveType.Primitive
  Line 57) Primitive.values() ==> com.github.javaparser.ast.type.PrimitiveType.Primitive[]
  Line 58) unboxMap.put(unboxedType.nameOfBoxedType, unboxedType) ==> com.github.javaparser.ast.type.PrimitiveType.Primitive
  Line 68) this.type = type ==> com.github.javaparser.ast.type.PrimitiveType.Primitive
  Line 73) beginLine ==> int
  Line 73) beginColumn ==> int
  Line 73) endLine ==> int
  Line 73) endColumn ==> int
  Line 74) this.type = type ==> com.github.javaparser.ast.type.PrimitiveType.Primitive
  Line 78) v.visit(this, arg) ==> R
  Line 82) v.visit(this, arg) ==> void
  Line 86) type ==> com.github.javaparser.ast.type.PrimitiveType.Primitive
  Line 90) type.toBoxedType() ==> com.github.javaparser.ast.type.ClassOrInterfaceType
  Line 94) this.type = type ==> com.github.javaparser.ast.type.PrimitiveType.Primitive
