Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions hs-bindgen/examples/golden/program_slicing_selection.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#include <errno.h> /* ENOENT, EACCES, ... */
#include <stddef.h> /* size_t */
#include <stdint.h> /* uint32_t, uint64_t */
#include <stdio.h> /* FILE */
#include <time.h> /* time_t */

enum FileOperationStatus {
SUCCESS = 0,
NOT_FOUND = ENOENT,
PERMISSION_DENIED = EACCES,
INVALID_ARGUMENT = EINVAL,
OUT_OF_MEMORY = ENOMEM,
CUSTOM_ERROR_OTHER = -1
};

struct FileOperationRecord {
enum FileOperationStatus status;
size_t bytes_processed;
};

enum FileOperationStatus read_file_chunk(FILE *file_ptr, void *buffer,
size_t bytes_to_read);

struct UnselectedStruct {
time_t time_t_should_not_be_in_fixtures;
};
23 changes: 23 additions & 0 deletions hs-bindgen/fixtures/program_slicing_selection.bindingspec.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
types:
- headers: program_slicing_selection.h
cname: struct FileOperationRecord
module: Example
identifier: FileOperationRecord
instances:
- Eq
- Show
- Storable
- headers: program_slicing_selection.h
cname: enum FileOperationStatus
module: Example
identifier: FileOperationStatus
instances:
- Eq
- Ord
- Read
- Show
- Storable
- headers: program_slicing_selection.h
cname: struct _IO_FILE
module: Example
identifier: C_IO_FILE
6 changes: 6 additions & 0 deletions hs-bindgen/fixtures/program_slicing_selection.exts.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
CApiFFI
TemplateHaskell
TypeFamilies
DerivingStrategies
EmptyDataDecls
PatternSynonyms
Loading
Loading