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

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

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

import com.alibaba.fastffi.CXXOperator;
import com.alibaba.fastffi.CXXReference;
import com.alibaba.fastffi.CXXValue;
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.StringRef;
import java.lang.Object;
import java.lang.String;
import java.lang.UnsatisfiedLinkError;

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

  public static final int HASH_SHIFT;

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

  public ASTUnit_cxx_0x47914e15(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;
    ASTUnit_cxx_0x47914e15 that = (ASTUnit_cxx_0x47914e15) o;
    return this.address == that.address;
  }

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

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

  @CXXOperator("delete")
  public void delete() {
    nativeDelete(address);
  }

  @CXXOperator("delete")
  public static native void nativeDelete(long ptr);

  @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 StringRef getASTFileName() {
    long ret$ = nativeGetASTFileName(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 nativeGetASTFileName(long ptr, long rv_base);

  @CXXReference
  public DiagnosticsEngine getDiagnostics() {
    long ret$ = nativeGetDiagnostics(address); return (new com.alibaba.fastffi.clang.DiagnosticsEngine_cxx_0xf7e98b3d(ret$));
  }

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

  @CXXValue
  public StringRef getMainFileName() {
    long ret$ = nativeGetMainFileName(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 nativeGetMainFileName(long ptr, long rv_base);

  @CXXValue
  public StringRef getOriginalSourceFileName() {
    long ret$ = nativeGetOriginalSourceFileName(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 nativeGetOriginalSourceFileName(long ptr, long rv_base);

  @CXXReference
  public Preprocessor getPreprocessor() {
    long ret$ = nativeGetPreprocessor(address); return (new com.alibaba.fastffi.clang.Preprocessor_cxx_0x25c4c3c0(ret$));
  }

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

  @CXXReference
  public Sema getSema() {
    long ret$ = nativeGetSema(address); return (new com.alibaba.fastffi.clang.Sema_cxx_0x230fb2d7(ret$));
  }

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

  public boolean hasSema() {
    return nativeHasSema(address);
  }

  public static native boolean nativeHasSema(long ptr);

  @CXXValue
  public ASTUnit.top_level_iterator top_level_begin() {
    long ret$ = nativeTop_level_begin(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.ASTUnit_top_level_iterator_cxx_0x44309987.SIZE)); return (new com.alibaba.fastffi.clang.ASTUnit_top_level_iterator_cxx_0x44309987(ret$));
  }

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

  public boolean top_level_empty() {
    return nativeTop_level_empty(address);
  }

  public static native boolean nativeTop_level_empty(long ptr);

  @CXXValue
  public ASTUnit.top_level_iterator top_level_end() {
    long ret$ = nativeTop_level_end(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.clang.ASTUnit_top_level_iterator_cxx_0x44309987.SIZE)); return (new com.alibaba.fastffi.clang.ASTUnit_top_level_iterator_cxx_0x44309987(ret$));
  }

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

  public long top_level_size() {
    return nativeTop_level_size(address);
  }

  public static native long nativeTop_level_size(long ptr);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy