Fun 0.41.5
The programming language that makes You have fun
Loading...
Searching...
No Matches
disconnect.c
Go to the documentation of this file.
1/*
2 * This file is part of the Fun programming language.
3 * https://fun-lang.xyz/
4 *
5 * Copyright 2025 Johannes Findeisen <you@hanez.org>
6 * Licensed under the terms of the Apache-2.0 license.
7 * https://opensource.org/license/apache-2-0
8 */
9
18
26
27/* PCSC disconnect */
29#ifdef FUN_WITH_PCSC
30 Value vh = pop_value(vm);
31 int hid = (int)vh.i;
33 pcsc_card_entry *ce = pcsc_get_card(hid);
34 if (!ce) {
35 push_value(vm, make_int(0));
36 break;
37 }
38 SCardDisconnect(ce->h, SCARD_LEAVE_CARD);
39 ce->in_use = 0;
40 ce->h = 0;
41 ce->proto = 0;
42 push_value(vm, make_int(1));
43#else
44 Value vh = pop_value(vm);
47#endif
48 break;
49}
@ OP_PCSC_DISCONNECT
Definition bytecode.h:188
free_value(vh)
push_value(vm, make_int(0))
Tagged union representing a Fun value.
Definition value.h:68
Value vh
Definition stubs.c:44
Value make_int(int64_t v)
Construct a Value representing a 64-bit integer.
Definition value.c:51