Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.ruby > #7528

ruby internal technology question

From aotto1968 <aotto1968@t-online.de>
Newsgroups comp.lang.ruby
Subject ruby internal technology question
Date 2024-09-27 09:52 +0200
Organization A noiseless patient Spider
Message-ID <vd5o8f$lcmi$1@dont-email.me> (permalink)

Show all headers | View raw


Hi, the following code from "symbol.h"

#if defined(HAVE_STMT_AND_DECL_IN_EXPR)
/* __builtin_constant_p and statement expression is available
  * since gcc-2.7.2.3 at least. */
#define rb_intern(str) \
     (RBIMPL_CONSTANT_P(str) ? \
      __extension__ ({ \
          static ID rbimpl_id; \
          rbimpl_intern_const(&rbimpl_id, (str)); \
      }) : \
      (rb_intern)(str))
#endif

#endif /* RBIMPL_SYMBOL_H */

uses

static ID rbimpl_id;

just to provide storage for the ID, why?

Back to comp.lang.ruby | Previous | Find similar


Thread

ruby internal technology question aotto1968 <aotto1968@t-online.de> - 2024-09-27 09:52 +0200

csiph-web