All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.alibaba.fastffi.clang.FunctionDecl_cxx_0x4dde1b13 Maven / Gradle / Ivy

The newest version!
package com.alibaba.fastffi.clang;

import com.alibaba.fastffi.CXXReference;
import com.alibaba.fastffi.CXXValue;
import com.alibaba.fastffi.FFIExpr;
import com.alibaba.fastffi.FFIForeignType;
import com.alibaba.fastffi.FFIPointerImpl;
import com.alibaba.fastffi.FFISynthetic;
import com.alibaba.fastffi.FFITypeFactory;
import com.alibaba.fastffi.llvm.StringOStream;
import com.alibaba.fastffi.llvm.StringRef;
import com.alibaba.fastffi.stdcxx.StdString;
import java.lang.Object;
import java.lang.String;
import java.lang.UnsatisfiedLinkError;

@FFIForeignType("clang::FunctionDecl")
@FFISynthetic("com.alibaba.fastffi.clang.FunctionDecl")
public class FunctionDecl_cxx_0x4dde1b13 extends FFIPointerImpl implements FunctionDecl {
  public static final int SIZE;

  public static final int HASH_SHIFT;

  static {
    try {
      System.loadLibrary("llvm4jni");
    } catch (UnsatisfiedLinkError e) {
      System.load(FFITypeFactory.findNativeLibrary(FunctionDecl_cxx_0x4dde1b13.class, "llvm4jni"));
    }
  }
  static {
    SIZE = _elementSize$$$();
    assert SIZE > 0;
    HASH_SHIFT = 31 - Integer.numberOfLeadingZeros(1 + SIZE);
    assert HASH_SHIFT > 0;
  }

  public FunctionDecl_cxx_0x4dde1b13(final long address) {
    super(address);
  }

  private static final native int _elementSize$$$();

  public boolean equals(Object o) {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;
    FunctionDecl_cxx_0x4dde1b13 that = (FunctionDecl_cxx_0x4dde1b13) o;
    return this.address == that.address;
  }

  public int hashCode() {
    return (int) (address >> HASH_SHIFT);
  }

  public String toString() {
    return getClass().getName() + "@" + Long.toHexString(address);
  }

  @CXXValue
  public DeclContext.decl_iterator decls_begin() {
    long ret$ = nativeDecls_begin(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.DeclContext_decl_iterator_cxx_0x893c298f.SIZE)); return (new com.alibaba.fastffi.clang.DeclContext_decl_iterator_cxx_0x893c298f(ret$));
  }

  @CXXValue
  public static native long nativeDecls_begin(long ptr, long rv_base);

  public boolean decls_empty() {
    return nativeDecls_empty(address);
  }

  public static native boolean nativeDecls_empty(long ptr);

  @CXXValue
  public DeclContext.decl_iterator decls_end() {
    long ret$ = nativeDecls_end(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.DeclContext_decl_iterator_cxx_0x893c298f.SIZE)); return (new com.alibaba.fastffi.clang.DeclContext_decl_iterator_cxx_0x893c298f(ret$));
  }

  @CXXValue
  public static native long nativeDecls_end(long ptr, long rv_base);

  public void dump(@CXXReference StringOStream Out, boolean Deserialize,
      @CXXValue ASTDumpOutputFormat OutputFormat) {
    nativeDump0(address, ((com.alibaba.fastffi.FFIPointerImpl) Out).address, Deserialize, OutputFormat.getValue());
  }

  public static native void nativeDump0(long ptr, long Out0, boolean Deserialize1,
      int OutputFormat2);

  @CXXReference
  public ASTContext getASTContext() {
    long ret$ = nativeGetASTContext(address); return (new com.alibaba.fastffi.clang.ASTContext_cxx_0xb01a2b7e(ret$));
  }

  @CXXReference
  public static native long nativeGetASTContext(long ptr);

  @CXXValue
  public AccessSpecifier getAccess() {
    return AccessSpecifier.get(nativeGetAccess(address));
  }

  @CXXValue
  public static native int nativeGetAccess(long ptr);

  @CXXReference
  public AttrVec getAttrs() {
    long ret$ = nativeGetAttrs(address); return (new com.alibaba.fastffi.clang.AttrVec_cxx_0x81b0fed2(ret$));
  }

  @CXXReference
  public static native long nativeGetAttrs(long ptr);

  @CXXValue
  public SourceLocation getBeginLoc() {
    long ret$ = nativeGetBeginLoc(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.SourceLocation_cxx_0xcb172b21.SIZE)); return (new com.alibaba.fastffi.clang.SourceLocation_cxx_0xcb172b21(ret$));
  }

  @CXXValue
  public static native long nativeGetBeginLoc(long ptr, long rv_base);

  public DeclContext getDeclContext() {
    long ret$ = nativeGetDeclContext(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.DeclContext_cxx_0x7beaa914(ret$));
  }

  public static native long nativeGetDeclContext(long ptr);

  public Decl.Kind getDeclKind() {
    return com.alibaba.fastffi.clang.Decl.Kind.get(nativeGetDeclKind(address));
  }

  public static native int nativeGetDeclKind(long ptr);

  @CXXValue
  public DeclarationName getDeclName() {
    long ret$ = nativeGetDeclName(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.DeclarationName_cxx_0x51c55314.SIZE)); return (new com.alibaba.fastffi.clang.DeclarationName_cxx_0x51c55314(ret$));
  }

  @CXXValue
  public static native long nativeGetDeclName(long ptr, long rv_base);

  public FunctionDecl getDefinition() {
    long ret$ = nativeGetDefinition(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.FunctionDecl_cxx_0x4dde1b13(ret$));
  }

  public static native long nativeGetDefinition(long ptr);

  public FunctionTemplateDecl getDescribedFunctionTemplate() {
    long ret$ = nativeGetDescribedFunctionTemplate(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.FunctionTemplateDecl_cxx_0xc98f15ad(ret$));
  }

  public static native long nativeGetDescribedFunctionTemplate(long ptr);

  @CXXValue
  public SourceLocation getEndLoc() {
    long ret$ = nativeGetEndLoc(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.SourceLocation_cxx_0xcb172b21.SIZE)); return (new com.alibaba.fastffi.clang.SourceLocation_cxx_0xcb172b21(ret$));
  }

  @CXXValue
  public static native long nativeGetEndLoc(long ptr, long rv_base);

  public LinkageSpecDecl getExternCContext() {
    long ret$ = nativeGetExternCContext(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.LinkageSpecDecl_cxx_0xae862cd9(ret$));
  }

  public static native long nativeGetExternCContext(long ptr);

  public IdentifierInfo getIdentifier() {
    long ret$ = nativeGetIdentifier(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.IdentifierInfo_cxx_0xc7d01328(ret$));
  }

  public static native long nativeGetIdentifier(long ptr);

  @CXXValue
  public Decl.Kind getKind() {
    return com.alibaba.fastffi.clang.Decl.Kind.get(nativeGetKind(address));
  }

  @CXXValue
  public static native int nativeGetKind(long ptr);

  public DeclContext getLexicalParent() {
    long ret$ = nativeGetLexicalParent(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.DeclContext_cxx_0x7beaa914(ret$));
  }

  public static native long nativeGetLexicalParent(long ptr);

  @CXXValue
  public SourceLocation getLocation() {
    long ret$ = nativeGetLocation(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.SourceLocation_cxx_0xcb172b21.SIZE)); return (new com.alibaba.fastffi.clang.SourceLocation_cxx_0xcb172b21(ret$));
  }

  @CXXValue
  public static native long nativeGetLocation(long ptr, long rv_base);

  public DeclContext getLookupParent() {
    long ret$ = nativeGetLookupParent(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.DeclContext_cxx_0x7beaa914(ret$));
  }

  public static native long nativeGetLookupParent(long ptr);

  public int getMinRequiredArguments() {
    return nativeGetMinRequiredArguments(address);
  }

  public static native int nativeGetMinRequiredArguments(long ptr);

  public Decl getMostRecentDecl() {
    long ret$ = nativeGetMostRecentDecl(address); return com.alibaba.fastffi.clang.DeclTypeRefiner.refine(ret$ == 0L ? null : new com.alibaba.fastffi.clang.Decl_cxx_0x2308e01b(ret$));
  }

  public static native long nativeGetMostRecentDecl(long ptr);

  @CXXValue
  public StringRef getName() {
    long ret$ = nativeGetName(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.llvm.StringRef_cxx_0xe9c826cb.SIZE)); return (new com.alibaba.fastffi.llvm.StringRef_cxx_0xe9c826cb(ret$));
  }

  @CXXValue
  public static native long nativeGetName(long ptr, long rv_base);

  @CXXValue
  public StdString getNameAsString() {
    long ret$ = nativeGetNameAsString(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.stdcxx.StdString_cxx_0xcec1e274.SIZE)); return (new com.alibaba.fastffi.stdcxx.StdString_cxx_0xcec1e274(ret$));
  }

  @CXXValue
  public static native long nativeGetNameAsString(long ptr, long rv_base);

  public Decl getNextDeclInContext() {
    long ret$ = nativeGetNextDeclInContext(address); return com.alibaba.fastffi.clang.DeclTypeRefiner.refine(ret$ == 0L ? null : new com.alibaba.fastffi.clang.Decl_cxx_0x2308e01b(ret$));
  }

  public static native long nativeGetNextDeclInContext(long ptr);

  public int getNumParams() {
    return nativeGetNumParams(address);
  }

  public static native int nativeGetNumParams(long ptr);

  @CXXValue
  public OverloadedOperatorKind getOverloadedOperator() {
    return com.alibaba.fastffi.clang.OverloadedOperatorKind.get(nativeGetOverloadedOperator(address));
  }

  @CXXValue
  public static native int nativeGetOverloadedOperator(long ptr);

  public ParmVarDecl getParamDecl(int idx) {
    long ret$ = nativeGetParamDecl(address, idx); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.ParmVarDecl_cxx_0x92b60a54(ret$));
  }

  public static native long nativeGetParamDecl(long ptr, int idx0);

  public DeclContext getParent() {
    long ret$ = nativeGetParent(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.DeclContext_cxx_0x7beaa914(ret$));
  }

  public static native long nativeGetParent(long ptr);

  @CXXReference
  public ASTContext getParentASTContext() {
    long ret$ = nativeGetParentASTContext(address); return (new com.alibaba.fastffi.clang.ASTContext_cxx_0xb01a2b7e(ret$));
  }

  @CXXReference
  public static native long nativeGetParentASTContext(long ptr);

  public Decl getPreviousDecl() {
    long ret$ = nativeGetPreviousDecl(address); return com.alibaba.fastffi.clang.DeclTypeRefiner.refine(ret$ == 0L ? null : new com.alibaba.fastffi.clang.Decl_cxx_0x2308e01b(ret$));
  }

  public static native long nativeGetPreviousDecl(long ptr);

  public DeclContext getPrimaryContext() {
    long ret$ = nativeGetPrimaryContext(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.DeclContext_cxx_0x7beaa914(ret$));
  }

  public static native long nativeGetPrimaryContext(long ptr);

  public NestedNameSpecifier getQualifier() {
    long ret$ = nativeGetQualifier(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.NestedNameSpecifier_cxx_0x158b942b(ret$));
  }

  public static native long nativeGetQualifier(long ptr);

  public DeclContext getRedeclContext() {
    long ret$ = nativeGetRedeclContext(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.DeclContext_cxx_0x7beaa914(ret$));
  }

  public static native long nativeGetRedeclContext(long ptr);

  @CXXValue
  public QualType getReturnType() {
    long ret$ = nativeGetReturnType(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.QualType_cxx_0x46a6a81a.SIZE)); return (new com.alibaba.fastffi.clang.QualType_cxx_0x46a6a81a(ret$));
  }

  @CXXValue
  public static native long nativeGetReturnType(long ptr, long rv_base);

  public TranslationUnitDecl getTranslationUnitDecl() {
    long ret$ = nativeGetTranslationUnitDecl(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.TranslationUnitDecl_cxx_0xf910aa8e(ret$));
  }

  public static native long nativeGetTranslationUnitDecl(long ptr);

  public TypeSourceInfo getTypeSourceInfo() {
    long ret$ = nativeGetTypeSourceInfo(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.clang.TypeSourceInfo_cxx_0xffaf074(ret$));
  }

  public static native long nativeGetTypeSourceInfo(long ptr);

  public boolean hasAttrs() {
    return nativeHasAttrs(address);
  }

  public static native boolean nativeHasAttrs(long ptr);

  public boolean hasBody() {
    return nativeHasBody(address);
  }

  public static native boolean nativeHasBody(long ptr);

  public boolean isClosure() {
    return nativeIsClosure(address);
  }

  public static native boolean nativeIsClosure(long ptr);

  public boolean isDefaulted() {
    return nativeIsDefaulted(address);
  }

  public static native boolean nativeIsDefaulted(long ptr);

  public boolean isDefined() {
    return nativeIsDefined(address);
  }

  public static native boolean nativeIsDefined(long ptr);

  public boolean isDeleted() {
    return nativeIsDeleted(address);
  }

  public static native boolean nativeIsDeleted(long ptr);

  public boolean isDependentContext() {
    return nativeIsDependentContext(address);
  }

  public static native boolean nativeIsDependentContext(long ptr);

  @FFIExpr("!{0}->isImplicit() && {0}->getASTContext().getSourceManager().isInMainFile({0}->getLocation())")
  public boolean isExplicitlyDeclaredInMainFile() {
    return nativeIsExplicitlyDeclaredInMainFile(address);
  }

  @FFIExpr("!{0}->isImplicit() && {0}->getASTContext().getSourceManager().isInMainFile({0}->getLocation())")
  public static native boolean nativeIsExplicitlyDeclaredInMainFile(long ptr);

  public boolean isExplicitlyDefaulted() {
    return nativeIsExplicitlyDefaulted(address);
  }

  public static native boolean nativeIsExplicitlyDefaulted(long ptr);

  public boolean isExternC() {
    return nativeIsExternC(address);
  }

  public static native boolean nativeIsExternC(long ptr);

  public boolean isExternCContext() {
    return nativeIsExternCContext(address);
  }

  public static native boolean nativeIsExternCContext(long ptr);

  public boolean isExternCXXContext() {
    return nativeIsExternCXXContext(address);
  }

  public static native boolean nativeIsExternCXXContext(long ptr);

  public boolean isFileContext() {
    return nativeIsFileContext(address);
  }

  public static native boolean nativeIsFileContext(long ptr);

  public boolean isFirstDecl() {
    return nativeIsFirstDecl(address);
  }

  public static native boolean nativeIsFirstDecl(long ptr);

  public boolean isFunctionOrMethod() {
    return nativeIsFunctionOrMethod(address);
  }

  public static native boolean nativeIsFunctionOrMethod(long ptr);

  public boolean isImplicit() {
    return nativeIsImplicit(address);
  }

  public static native boolean nativeIsImplicit(long ptr);

  public boolean isInAnonymousNamespace() {
    return nativeIsInAnonymousNamespace(address);
  }

  public static native boolean nativeIsInAnonymousNamespace(long ptr);

  public boolean isInStdNamespace() {
    return nativeIsInStdNamespace(address);
  }

  public static native boolean nativeIsInStdNamespace(long ptr);

  public boolean isInlineNamespace() {
    return nativeIsInlineNamespace(address);
  }

  public static native boolean nativeIsInlineNamespace(long ptr);

  public boolean isLookupContext() {
    return nativeIsLookupContext(address);
  }

  public static native boolean nativeIsLookupContext(long ptr);

  public boolean isNamespace() {
    return nativeIsNamespace(address);
  }

  public static native boolean nativeIsNamespace(long ptr);

  public boolean isObjCContainer() {
    return nativeIsObjCContainer(address);
  }

  public static native boolean nativeIsObjCContainer(long ptr);

  public boolean isOverloadedOperator() {
    return nativeIsOverloadedOperator(address);
  }

  public static native boolean nativeIsOverloadedOperator(long ptr);

  public boolean isPure() {
    return nativeIsPure(address);
  }

  public static native boolean nativeIsPure(long ptr);

  public boolean isRecord() {
    return nativeIsRecord(address);
  }

  public static native boolean nativeIsRecord(long ptr);

  public boolean isStdNamespace() {
    return nativeIsStdNamespace(address);
  }

  public static native boolean nativeIsStdNamespace(long ptr);

  public boolean isThisDeclarationADefinition() {
    return nativeIsThisDeclarationADefinition(address);
  }

  public static native boolean nativeIsThisDeclarationADefinition(long ptr);

  public boolean isTranslationUnit() {
    return nativeIsTranslationUnit(address);
  }

  public static native boolean nativeIsTranslationUnit(long ptr);

  public boolean isTransparentContext() {
    return nativeIsTransparentContext(address);
  }

  public static native boolean nativeIsTransparentContext(long ptr);

  public boolean isTrivial() {
    return nativeIsTrivial(address);
  }

  public static native boolean nativeIsTrivial(long ptr);

  public boolean isUserProvided() {
    return nativeIsUserProvided(address);
  }

  public static native boolean nativeIsUserProvided(long ptr);

  public boolean isVariadic() {
    return nativeIsVariadic(address);
  }

  public static native boolean nativeIsVariadic(long ptr);

  @CXXValue
  public FunctionDecl.param_iterator param_begin() {
    long ret$ = nativeParam_begin(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.FunctionDecl_param_iterator_cxx_0x873d5c33.SIZE)); return (new com.alibaba.fastffi.clang.FunctionDecl_param_iterator_cxx_0x873d5c33(ret$));
  }

  @CXXValue
  public static native long nativeParam_begin(long ptr, long rv_base);

  @CXXValue
  public FunctionDecl.param_iterator param_end() {
    long ret$ = nativeParam_end(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.FunctionDecl_param_iterator_cxx_0x873d5c33.SIZE)); return (new com.alibaba.fastffi.clang.FunctionDecl_param_iterator_cxx_0x873d5c33(ret$));
  }

  @CXXValue
  public static native long nativeParam_end(long ptr, long rv_base);

  public long param_size() {
    return nativeParam_size(address);
  }

  public static native long nativeParam_size(long ptr);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy