Skip to content

Commit d250e58

Browse files
committed
feat(lint): corrected example.c to match linter
1 parent 52a9832 commit d250e58

File tree

5 files changed

+276
-149
lines changed

5 files changed

+276
-149
lines changed

lib/node_modules/@stdlib/random/base/tinymt32/benchmark/c/benchmark.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ double benchmark() {
120120
double elapsed;
121121
double t;
122122
uint32_t state[4];
123-
uint32_t v;
123+
double v;
124124
int i;
125125

126126
// Initialize state

lib/node_modules/@stdlib/random/base/tinymt32/examples/c/Makefile

Lines changed: 35 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -18,129 +18,65 @@
1818

1919
# VARIABLES #
2020

21-
ifndef VERBOSE
22-
QUIET := @
23-
else
24-
QUIET :=
25-
endif
26-
27-
# Determine the OS ([1][1], [2][2]).
28-
#
29-
# [1]: https://en.wikipedia.org/wiki/Uname#Examples
30-
# [2]: http://stackoverflow.com/a/27776822/2225624
31-
OS ?= $(shell uname)
32-
ifneq (, $(findstring MINGW,$(OS)))
33-
OS := WINNT
34-
else
35-
ifneq (, $(findstring MSYS,$(OS)))
36-
OS := WINNT
37-
else
38-
ifneq (, $(findstring CYGWIN,$(OS)))
39-
OS := WINNT
40-
else
41-
ifneq (, $(findstring Windows_NT,$(OS)))
42-
OS := WINNT
43-
endif
44-
endif
45-
endif
46-
endif
21+
# Determine the OS:
22+
UNAME := $(shell uname -s)
4723

4824
# Define the program used for compiling C source files:
49-
ifdef C_COMPILER
50-
CC := $(C_COMPILER)
25+
ifdef CC
26+
CC := $(CC)
5127
else
5228
CC := gcc
5329
endif
5430

55-
# Define the command-line options when compiling C files:
56-
CFLAGS ?= \
57-
-std=c99 \
58-
-O3 \
59-
-Wall \
60-
-pedantic
31+
# Define the command-line options when compiling C source files:
32+
CFLAGS ?= -O3 -std=c99
6133

62-
# Determine whether to generate position independent code ([1][1], [2][2]).
63-
#
64-
# [1]: https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#Code-Gen-Options
65-
# [2]: http://stackoverflow.com/questions/5311515/gcc-fpic-option
66-
ifeq ($(OS), WINNT)
67-
fPIC ?=
34+
# Define the program for removing files:
35+
REMOVE ?= rm -f
36+
37+
# Determine extension for shared libraries based on the OS:
38+
ifeq ($(UNAME), Darwin)
39+
SHARED_EXT := dylib
6840
else
69-
fPIC ?= -fPIC
41+
SHARED_EXT := so
7042
endif
7143

72-
# List of includes (e.g., `-I /foo/bar -I /beep/boop/include`):
73-
INCLUDE ?=
74-
75-
# List of source files:
76-
SOURCE_FILES ?=
44+
# Define the command for running the example:
45+
RUN ?= ./example
7746

78-
# List of libraries (e.g., `-lopenblas -lpthread`):
79-
LIBRARIES ?=
47+
# TARGETS #
8048

81-
# List of library paths (e.g., `-L /foo/bar -L /beep/boop`):
82-
LIBPATH ?=
83-
84-
# List of C targets:
85-
c_targets := example.out
49+
# Default target.
50+
#
51+
# This target is the default target.
8652

53+
all: clean build run
8754

88-
# RULES #
55+
.PHONY: all
8956

90-
#/
91-
# Compiles source files.
92-
#
93-
# @param {string} [C_COMPILER] - C compiler (e.g., `gcc`)
94-
# @param {string} [CFLAGS] - C compiler options
95-
# @param {(string|void)} [fPIC] - compiler flag determining whether to generate position independent code (e.g., `-fPIC`)
96-
# @param {string} [INCLUDE] - list of includes (e.g., `-I /foo/bar -I /beep/boop/include`)
97-
# @param {string} [SOURCE_FILES] - list of source files
98-
# @param {string} [LIBPATH] - list of library paths (e.g., `-L /foo/bar -L /beep/boop`)
99-
# @param {string} [LIBRARIES] - list of libraries (e.g., `-lopenblas -lpthread`)
100-
#
101-
# @example
102-
# make
57+
# Compile C source.
10358
#
104-
# @example
105-
# make all
106-
#/
107-
all: $(c_targets)
59+
# This target compiles C source files.
10860

109-
.PHONY: all
61+
build: example.c tinymt32.c tinymt32.h
62+
$(CC) $(CFLAGS) -o example example.c tinymt32.c
11063

111-
#/
112-
# Compiles C source files.
113-
#
114-
# @private
115-
# @param {string} CC - C compiler (e.g., `gcc`)
116-
# @param {string} CFLAGS - C compiler flags
117-
# @param {(string|void)} fPIC - compiler flag determining whether to generate position independent code (e.g., `-fPIC`)
118-
# @param {string} INCLUDE - list of includes (e.g., `-I /foo/bar`)
119-
# @param {string} SOURCE_FILES - list of source files
120-
# @param {string} LIBPATH - list of library paths (e.g., `-L /foo/bar`)
121-
# @param {string} LIBRARIES - list of libraries (e.g., `-lopenblas`)
122-
#/
123-
$(c_targets): %.out: %.c
124-
$(QUIET) $(CC) $(CFLAGS) $(fPIC) $(INCLUDE) -o $@ $(SOURCE_FILES) $< $(LIBPATH) -lm $(LIBRARIES)
64+
.PHONY: build
12565

126-
#/
127-
# Runs compiled examples.
66+
# Run the example.
12867
#
129-
# @example
130-
# make run
131-
#/
132-
run: $(c_targets)
133-
$(QUIET) ./$<
68+
# This target runs the compiled example.
69+
70+
run: build
71+
$(RUN)
13472

13573
.PHONY: run
13674

137-
#/
138-
# Removes generated files.
75+
# Remove generated files.
13976
#
140-
# @example
141-
# make clean
142-
#/
77+
# This target removes any generated files.
78+
14379
clean:
144-
$(QUIET) -rm -f *.o *.out
80+
$(REMOVE) example *.o *.$(SHARED_EXT)
14581

14682
.PHONY: clean

lib/node_modules/@stdlib/random/base/tinymt32/examples/c/example.c

Lines changed: 36 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -16,62 +16,49 @@
1616
* limitations under the License.
1717
*/
1818

19-
#include "stdlib/random/base/tinymt32.h"
20-
#include "stdlib/random/base/shared.h"
21-
#include <stdlib.h>
2219
#include <stdio.h>
23-
#include <inttypes.h>
24-
25-
int main( void ) {
26-
int8_t status;
27-
uint64_t v;
28-
int32_t i;
29-
double d;
30-
31-
// Define a seed:
32-
uint32_t seed[] = { 12345 };
20+
#include <stdlib.h>
21+
#include <stdint.h>
22+
#include <stdarg.h>
23+
#include "tinymt32.h"
3324

34-
// Create a PRNG...
35-
struct BasePRNGObject *obj = stdlib_base_random_tinymt32_allocate( seed, 1 );
36-
if ( obj == NULL ) {
37-
fprintf( stderr, "Error allocating memory.\n" );
38-
exit( 1 );
39-
}
25+
/**
26+
* Prints a formatted output string.
27+
*
28+
* @param fmt format string
29+
* @param ... variadic arguments
30+
*/
31+
void print( const char *fmt, ... ) {
32+
va_list args;
33+
va_start( args, fmt );
34+
vprintf( fmt, args );
35+
va_end( args );
36+
}
4037

41-
status = stdlib_base_random_tinymt32_seed( obj, seed );
42-
if ( status != 0 ) {
43-
printf( "Unable to retrieve the PRNG seed.\n" );
44-
exit( 1 );
38+
/**
39+
* Main execution sequence.
40+
*/
41+
int main( void ) {
42+
// Create a TinyMT32 state:
43+
tinymt32_t *state = malloc( sizeof(tinymt32_t) );
44+
if ( state == NULL ) {
45+
printf( "Error allocating memory.\n" );
46+
return 1;
4547
}
46-
printf( "seed = %d\n", seed[ 0 ] );
4748

48-
printf( "name = %s\n", obj->prng->name );
49-
printf( "min = %"PRIu64"\n", obj->prng->min );
50-
printf( "max = %"PRIu64"\n", obj->prng->max );
49+
// Initialize the state with a seed:
50+
uint32_t seed = 12345;
51+
tinymt32_init( state, seed );
5152

52-
printf( "\nPseudorandom integers...\n" );
53-
for ( i = 0; i < 10; i++ ) {
54-
status = obj->prng->next( obj, &v );
55-
if ( status != 0 ) {
56-
printf( "Unexpected result.\n" );
57-
exit( 1 );
58-
}
59-
printf( "%"PRIu64"\n", v );
53+
// Generate some random numbers:
54+
printf( "Random numbers from TinyMT32: seed = %u\n", seed );
55+
for ( int i = 0; i < 10; i++ ) {
56+
uint32_t r = tinymt32_generate_uint32( state );
57+
printf( "%u\n", r );
6058
}
6159

62-
printf( "\n" );
63-
printf( "min (normalized) = %0.16f\n", obj->prng->normalized_min );
64-
printf( "max (normalized) = %0.16f\n", obj->prng->normalized_max );
65-
66-
printf( "\nPseudorandom doubles...\n" );
67-
for ( i = 0; i < 10; i++ ) {
68-
status = obj->prng->normalized( obj, &d );
69-
if ( status != 0 ) {
70-
printf( "Unexpected result.\n" );
71-
exit( 1 );
72-
}
73-
printf( "%0.16f\n", d );
74-
}
60+
// Free allocated memory:
61+
free( state );
7562

76-
stdlib_base_random_tinymt32_free( obj );
63+
return 0;
7764
}

0 commit comments

Comments
 (0)