Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
uppercase.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include "duktape.h"

Go to the source code of this file.

Functions

static int dummy_upper_case (duk_context *ctx)
 
int main (int argc, char *argv[])
 

Function Documentation

◆ dummy_upper_case()

static int dummy_upper_case ( duk_context * ctx)
static

Definition at line 6 of file duktape-1.5.2/examples/guide/uppercase.c.

6 {
7 size_t sz;
8 const char *val = duk_require_lstring(ctx, 0, &sz);
9 size_t i;
10
11 /* We're going to need 'sz' additional entries on the stack. */
12 duk_require_stack(ctx, sz);
13
14 for (i = 0; i < sz; i++) {
15 char ch = val[i];
16 if (ch >= 'a' && ch <= 'z') {
17 ch = ch - 'a' + 'A';
18 }
19 duk_push_lstring(ctx, (const char *) &ch, 1);
20 }
21
22 duk_concat(ctx, sz);
23 return 1;
24}
DUK_EXTERNAL void duk_concat(duk_context *ctx, duk_idx_t count)
DUK_EXTERNAL void duk_require_stack(duk_context *ctx, duk_idx_t extra)
DUK_EXTERNAL const char * duk_push_lstring(duk_context *ctx, const char *str, duk_size_t len)
DUK_EXTERNAL const char * duk_require_lstring(duk_context *ctx, duk_idx_t index, duk_size_t *out_len)

References duk_concat(), duk_push_lstring(), duk_require_lstring(), and duk_require_stack().

Referenced by main().

◆ main()

int main ( int argc,
char * argv[] )

Definition at line 26 of file duktape-1.5.2/examples/guide/uppercase.c.

26 {
27 duk_context *ctx;
28
29 if (argc < 2) { exit(1); }
30
32 if (!ctx) { exit(1); }
33
35 duk_push_string(ctx, argv[1]);
36 duk_call(ctx, 1);
37 printf("%s -> %s\n", argv[1], duk_to_string(ctx, -1));
38 duk_pop(ctx);
39
41 return 0;
42}
static int dummy_upper_case(duk_context *ctx)
DUK_EXTERNAL const char * duk_push_string(duk_context *ctx, const char *str)
DUK_EXTERNAL duk_idx_t duk_push_c_function(duk_context *ctx, duk_c_function func, duk_int_t nargs)
DUK_EXTERNAL void duk_destroy_heap(duk_context *ctx)
DUK_EXTERNAL void duk_call(duk_context *ctx, duk_idx_t nargs)
DUK_EXTERNAL const char * duk_to_string(duk_context *ctx, duk_idx_t index)
DUK_EXTERNAL void duk_pop(duk_context *ctx)
#define duk_create_heap_default()
#define printf

References duk_call(), duk_create_heap_default, duk_destroy_heap(), duk_pop(), duk_push_c_function(), duk_push_string(), duk_to_string(), dummy_upper_case(), and printf.