blob: 9a94f0d7e1a20fec5061a4554eb65782decdbbb6 [file] [log] [blame]
// AUTO GENERATED FILE, DO NOT EDIT.
//
// Generated by `package:ffigen`.
import 'dart:ffi' as ffi;
/// Bindings to `headers/example.h`.
class NativeLibrary {
/// Holds the Dynamic library.
final ffi.DynamicLibrary _dylib;
/// The symbols are looked up in [dynamicLibrary].
NativeLibrary(ffi.DynamicLibrary dynamicLibrary) : _dylib = dynamicLibrary;
/// Adds 2 integers.
int sum(
int a,
int b,
) {
return (_sum ??= _dylib.lookupFunction<_c_sum, _dart_sum>('sum'))(
a,
b,
);
}
_dart_sum? _sum;
/// Subtracts 2 integers.
int subtract(
ffi.Pointer<ffi.Int32> a,
int b,
) {
return (_subtract ??=
_dylib.lookupFunction<_c_subtract, _dart_subtract>('subtract'))(
a,
b,
);
}
_dart_subtract? _subtract;
/// Multiplies 2 integers, returns pointer to an integer,.
ffi.Pointer<ffi.Int32> multiply(
int a,
int b,
) {
return (_multiply ??=
_dylib.lookupFunction<_c_multiply, _dart_multiply>('multiply'))(
a,
b,
);
}
_dart_multiply? _multiply;
/// Divides 2 integers, returns pointer to a float.
ffi.Pointer<ffi.Float> divide(
int a,
int b,
) {
return (_divide ??=
_dylib.lookupFunction<_c_divide, _dart_divide>('divide'))(
a,
b,
);
}
_dart_divide? _divide;
/// Divides 2 floats, returns a pointer to double.
ffi.Pointer<ffi.Double> dividePercision(
ffi.Pointer<ffi.Float> a,
ffi.Pointer<ffi.Float> b,
) {
return (_dividePercision ??=
_dylib.lookupFunction<_c_dividePercision, _dart_dividePercision>(
'dividePercision'))(
a,
b,
);
}
_dart_dividePercision? _dividePercision;
}
typedef _c_sum = ffi.Int32 Function(
ffi.Int32 a,
ffi.Int32 b,
);
typedef _dart_sum = int Function(
int a,
int b,
);
typedef _c_subtract = ffi.Int32 Function(
ffi.Pointer<ffi.Int32> a,
ffi.Int32 b,
);
typedef _dart_subtract = int Function(
ffi.Pointer<ffi.Int32> a,
int b,
);
typedef _c_multiply = ffi.Pointer<ffi.Int32> Function(
ffi.Int32 a,
ffi.Int32 b,
);
typedef _dart_multiply = ffi.Pointer<ffi.Int32> Function(
int a,
int b,
);
typedef _c_divide = ffi.Pointer<ffi.Float> Function(
ffi.Int32 a,
ffi.Int32 b,
);
typedef _dart_divide = ffi.Pointer<ffi.Float> Function(
int a,
int b,
);
typedef _c_dividePercision = ffi.Pointer<ffi.Double> Function(
ffi.Pointer<ffi.Float> a,
ffi.Pointer<ffi.Float> b,
);
typedef _dart_dividePercision = ffi.Pointer<ffi.Double> Function(
ffi.Pointer<ffi.Float> a,
ffi.Pointer<ffi.Float> b,
);