TypeRef targetType = type instanceof TypeRef.Pointer ? ((TypeRef.Pointer)type).getTarget() : null; boolean isCallback = targetType != null && TypeConversion.JavaPrim prim = result.typeConverter.getPrimitive(isPointer ? ((com.ochafik.lang.jnaerator.parser.TypeRef.Pointer) type).getTarget() : type); type.setMarkedAsResolved(false); TypeRef convertedType = typeConverter().convertTypeToJNA(type, TypeConversion.TypeConversionMode.NativeParameter, callerLibraryName); struct.moveAllCommentsBefore(); TypeRef pointerType = new TypeRef.Pointer(type, Declarator.PointerStyle.Pointer);
@Override public MutableByDeclarator mutateType(MutableByDeclarator type) { if (type == null) return null; type = type.clone(); if (type instanceof Function) { TypeRef fs = new TypeRef.FunctionSignature((Function)type).importDetails((Element)type, true); type = (MutableByDeclarator) new TypeRef.Pointer(fs, getPointerStyle()); } else if (type instanceof TypeRef) { type = (MutableByDeclarator) new TypeRef.Pointer((TypeRef)type, getPointerStyle()).importDetails((Element)type, true); } else throw new IllegalArgumentException(type.getClass().getName() + " cannot be mutated by pointer"); ((Element)type).importDetails(this, false); return getTarget() == null ? type : getTarget().mutateType(type); } public Declarator.PointerStyle getPointerStyle() {
if (p.getTarget() instanceof TypeRef.SimpleTypeRef) { if (isResolved((TypeRef.SimpleTypeRef) p.getTarget())) { return p.getTarget(); Identifier name = ((TypeRef.SimpleTypeRef) p.getTarget()).getName(); if (!"void".equals(name.toString()) && name.isPlain()) { TypeRef ptarget = pt.getTarget(); if (ptarget instanceof TypeRef.SimpleTypeRef) { TypeRef.SimpleTypeRef ptargett = (TypeRef.SimpleTypeRef) ptarget;
if (p.getTarget() instanceof TypeRef.SimpleTypeRef) { if (isResolved((TypeRef.SimpleTypeRef) p.getTarget())) { return p.getTarget(); Identifier name = ((TypeRef.SimpleTypeRef) p.getTarget()).getName(); if (!"void".equals(name.toString()) && name.isPlain()) { TypeRef ptarget = pt.getTarget(); if (ptarget instanceof TypeRef.SimpleTypeRef) { TypeRef.SimpleTypeRef ptargett = (TypeRef.SimpleTypeRef) ptarget;
TypeRef argType = arg.getValueType(); if (isVarArgs) { argType = new TypeRef.Pointer(typeRef(void.class), PointerStyle.Pointer);
TypeRef argType = arg.getValueType(); if (isVarArgs) { argType = new TypeRef.Pointer(typeRef(void.class), PointerStyle.Pointer);
mutType = new TypeRef.Pointer(typeRef(void.class), PointerStyle.Pointer);
fs = (FunctionSignature) tr; } else if (tr instanceof TypeRef.Pointer) { TypeRef target = ((TypeRef.Pointer) tr).getTarget(); if (target instanceof FunctionSignature) { fs = (FunctionSignature) target;
fs = (FunctionSignature) tr; } else if (tr instanceof TypeRef.Pointer) { TypeRef target = ((TypeRef.Pointer) tr).getTarget(); if (target instanceof FunctionSignature) { fs = (FunctionSignature) target;
TypeRef pInt = new TypeRef.Pointer(new Primitive("int"), Declarator.PointerStyle.Pointer); result.addManualTypeDef("intptr_t", pInt); result.addManualTypeDef("uintptr_t", pInt);
TypeRef pInt = new TypeRef.Pointer(new Primitive("int"), Declarator.PointerStyle.Pointer); result.addManualTypeDef("intptr_t", pInt); result.addManualTypeDef("uintptr_t", pInt);
mutType = new TypeRef.Pointer(typeRef(void.class), PointerStyle.Pointer);
fs = (FunctionSignature) tr; } else if (tr instanceof TypeRef.Pointer) { TypeRef target = ((TypeRef.Pointer) tr).getTarget(); if (target instanceof FunctionSignature) { fs = (FunctionSignature) target;
TypeRef targetType = type instanceof TypeRef.Pointer ? ((TypeRef.Pointer)type).getTarget() : null; boolean isCallback = targetType != null && TypeConversion.JavaPrim prim = result.typeConverter.getPrimitive(isPointer ? ((com.ochafik.lang.jnaerator.parser.TypeRef.Pointer) type).getTarget() : type); type.setMarkedAsResolved(false); TypeRef convertedType = typeConverter().convertTypeToJNA(type, TypeConversion.TypeConversionMode.NativeParameter, callerLibraryName); struct.moveAllCommentsBefore(); TypeRef pointerType = new TypeRef.Pointer(type, Declarator.PointerStyle.Pointer);
String methodName = library + "_" + (function.getParentElement() instanceof Struct ? ((Struct) function.getParentElement()).getTag() + "_" : "") + function.getName(); Function method = new Function(Function.Type.CppMethod, ident(methodName), typeRef(v8Ident("Handle", v8Ident("Value")))); method.addArg(new Arg(argsName, new TypeRef.Pointer(typeRef(v8Ident("Arguments")), Declarator.PointerStyle.Reference).addModifiers(ModifierType.Const))); Block body = new Block(); methodCall(ident("node", "Buffer", "Data"), methodCall(argExpr.clone(), Expression.MemberRefStyle.Dot, templateIdent(ident("As"), varRef(v8Ident("Object")))))); argType = new TypeRef.Pointer(typeRef(ident("char")), Declarator.PointerStyle.Pointer); argUsageExpr = cast(transformTypeForCast(arg.getValueType()), varRef(arg.getName())); break; memberRef( methodCall(ident("node", "Buffer", "New"), cast(new TypeRef.Pointer(typeRef("char"), Declarator.PointerStyle.Pointer), varRef(returnValueName)), expr(1), varRef(dummyNodeBufferFreeCallbackName),
String methodName = library + "_" + (function.getParentElement() instanceof Struct ? ((Struct) function.getParentElement()).getTag() + "_" : "") + function.getName(); Function method = new Function(Function.Type.CppMethod, ident(methodName), typeRef(v8Ident("Handle", v8Ident("Value")))); method.addArg(new Arg(argsName, new TypeRef.Pointer(typeRef(v8Ident("Arguments")), Declarator.PointerStyle.Reference).addModifiers(ModifierType.Const))); Block body = new Block(); methodCall(ident("node", "Buffer", "Data"), methodCall(argExpr.clone(), Expression.MemberRefStyle.Dot, templateIdent(ident("As"), varRef(v8Ident("Object")))))); argType = new TypeRef.Pointer(typeRef(ident("char")), Declarator.PointerStyle.Pointer); argUsageExpr = cast(transformTypeForCast(arg.getValueType()), varRef(arg.getName())); break; memberRef( methodCall(ident("node", "Buffer", "New"), cast(new TypeRef.Pointer(typeRef("char"), Declarator.PointerStyle.Pointer), varRef(returnValueName)), expr(1), varRef(dummyNodeBufferFreeCallbackName),
fs = (FunctionSignature) tr; } else if (tr instanceof TypeRef.Pointer) { TypeRef target = ((TypeRef.Pointer) tr).getTarget(); if (target instanceof FunctionSignature) { fs = (FunctionSignature) target;
type = new TypeRef.Pointer(pointed, Declarator.PointerStyle.Pointer);
type = (f1!=null?f1.signature:null); if ((f1!=null?f1.pointerStyle:null) != null) { type = new Pointer(type, (f1!=null?f1.pointerStyle:null));
vd.setValueType(new Pointer(tr, PointerStyle.Pointer)); ret.varDeclTypeRefsTransformedToPointers.add(vd); Expression defVal = decl.getDefaultValue();