mruby 3.3.0
mruby is the lightweight implementation of the Ruby language
Loading...
Searching...
No Matches
version.h
Go to the documentation of this file.
1
7#ifndef MRUBY_VERSION_H
8#define MRUBY_VERSION_H
9
10#include "common.h"
11
16
17/*
18 * A passed in expression.
19 */
20#define MRB_STRINGIZE0(expr) #expr
21
22/*
23 * Passes in an expression to MRB_STRINGIZE0.
24 */
25#define MRB_STRINGIZE(expr) MRB_STRINGIZE0(expr)
26
27/*
28 * The version of Ruby used by mruby.
29 */
30#define MRUBY_RUBY_VERSION "3.3"
31
32/*
33 * Ruby engine.
34 */
35#define MRUBY_RUBY_ENGINE "mruby"
36
37/*
38 * Major release version number.
39 */
40#define MRUBY_RELEASE_MAJOR 3
41
42/*
43 * Minor release version number.
44 */
45#define MRUBY_RELEASE_MINOR 3
46
47/*
48 * Tiny release version number.
49 */
50#define MRUBY_RELEASE_TEENY 0
51
52/*
53 * Patch level.
54 */
55#define MRUBY_PATCHLEVEL -1
56
57/*
58 * Patch level string. (optional)
59 */
60#define MRUBY_PATCHLEVEL_STR ""
61
62#ifndef MRUBY_PATCHLEVEL_STR
63# if MRUBY_PATCHLEVEL < 0
64# define MRUBY_PATCHLEVEL_STR "dev"
65# else
66# define MRUBY_PATCHLEVEL_STR "p"MRB_STRINGIZE(MRUBY_PATCHLEVEL)
67# endif
68#endif
69
70/*
71 * The mruby version.
72 */
73#define MRUBY_VERSION MRB_STRINGIZE(MRUBY_RELEASE_MAJOR) "." MRB_STRINGIZE(MRUBY_RELEASE_MINOR) "." MRB_STRINGIZE(MRUBY_RELEASE_TEENY)
74
75/*
76 * Release number.
77 */
78#define MRUBY_RELEASE_NO (MRUBY_RELEASE_MAJOR * 100 * 100 + MRUBY_RELEASE_MINOR * 100 + MRUBY_RELEASE_TEENY)
79
80/*
81 * Release year.
82 */
83#define MRUBY_RELEASE_YEAR 2024
84
85/*
86 * Release month.
87 */
88#define MRUBY_RELEASE_MONTH 2
89
90/*
91 * Release day.
92 */
93#define MRUBY_RELEASE_DAY 14
94
95/*
96 * Release date as a string.
97 */
98#define MRUBY_RELEASE_DATE \
99 MRUBY_RELEASE_YEAR_STR "-" \
100 MRUBY_RELEASE_MONTH_STR "-" \
101 MRUBY_RELEASE_DAY_STR
102#define MRUBY_RELEASE_YEAR_STR MRB_STRINGIZE(MRUBY_RELEASE_YEAR)
103#if MRUBY_RELEASE_MONTH < 10
104#define MRUBY_RELEASE_MONTH_STR "0" MRB_STRINGIZE(MRUBY_RELEASE_MONTH)
105#else
106#define MRUBY_RELEASE_MONTH_STR MRB_STRINGIZE(MRUBY_RELEASE_MONTH)
107#endif
108#if MRUBY_RELEASE_DAY < 10
109#define MRUBY_RELEASE_DAY_STR "0" MRB_STRINGIZE(MRUBY_RELEASE_DAY)
110#else
111#define MRUBY_RELEASE_DAY_STR MRB_STRINGIZE(MRUBY_RELEASE_DAY)
112#endif
113
114/*
115 * The year mruby was first created.
116 */
117#define MRUBY_BIRTH_YEAR 2010
118
119/*
120 * mruby's authors.
121 */
122#define MRUBY_AUTHOR "mruby developers"
123
124/*
125 * mruby's version, and release date.
126 */
127#define MRUBY_DESCRIPTION \
128 "mruby " MRUBY_VERSION \
129 MRUBY_PATCHLEVEL_STR \
130 " (" MRUBY_RELEASE_DATE ")" \
131
132/*
133 * mruby's copyright information.
134 */
135#define MRUBY_COPYRIGHT \
136 "mruby - Copyright (c) " \
137 MRB_STRINGIZE(MRUBY_BIRTH_YEAR)"-" \
138 MRB_STRINGIZE(MRUBY_RELEASE_YEAR)" " \
139 MRUBY_AUTHOR \
140
142
143#endif /* MRUBY_VERSION_H */
mruby common platform definition"
#define MRB_END_DECL
End declarations in C mode.
Definition common.h:28
#define MRB_BEGIN_DECL
Start declarations in C mode.
Definition common.h:26