1.3 KiB
1.3 KiB
Host files
File path: out/dir/api.rs
// Host code
/* Rust API */
#[derive(trixy::__private::thiserror::Error)]
#[allow(non_camel_case_types)]
#[derive(Debug)]
pub enum ErrorOne {
#[error("I'm an error")]
Error,
#[error("I'm also an error'")]
ErrorB,
}
impl From<crate::ErrorOne_c> for ErrorOne {
fn from(value: crate::ErrorOne_c) -> Self {
match value {
crate::ErrorOne_c::Error => Self::Error,
crate::ErrorOne_c::ErrorB => Self::ErrorB,
}
}
}
#[derive(Debug)]
pub enum Commands {}
/* C API */
#[derive(trixy::__private::thiserror::Error)]
#[allow(non_camel_case_types)]
#[repr(C)]
#[derive(Debug)]
pub enum ErrorOne_c {
#[error("I'm an error")]
Error,
#[error("I'm also an error'")]
ErrorB,
}
impl From<crate::ErrorOne> for ErrorOne_c {
fn from(value: crate::ErrorOne) -> Self {
match value {
crate::ErrorOne::Error => Self::Error,
crate::ErrorOne::ErrorB => Self::ErrorB,
}
}
}
// vim: filetype=rust
Auxiliary files
File path: dist/interface.h
#if !defined TRIXY_MAIN_HEADER
#define TRIXY_MAIN_HEADER
#include "errno.h"
#include "string.h"
#include "vec.h"
/**
*/
enum ErrorOne
{
/**
*/
Error,
/**
*/
ErrorB,
};
#endif // if !defined TRIXY_MAIN_HEADER
// vim: filetype=c