Ruby: include/ruby/internal/encoding/re.h File Reference

Ruby 3.4.6p54 (2025-09-16 revision dbd83256b1cec76c69756ecb8758b9e1079833de)

Functions
re.h File Reference

Routines to manipulate encodings of symbols. More...

`#include "ruby/internal/dllexport.h"`
`#include "ruby/internal/encoding/encoding.h"`
`#include "ruby/internal/value.h"`

Go to the source code of this file.

## Functions
VALUE | rb_enc_reg_new (const char *ptr, long len, rb_encoding *enc, int opts)
| Identical to rb_reg_new(), except it additionally takes an encoding.

## Detailed Description

Routines to manipulate encodings of symbols.

Author
  Ruby developers ruby-.nosp@m.core.nosp@m.@ruby.nosp@m.-lan.nosp@m.g.org

Copyright
  This file is a part of the programming language Ruby. Permission is hereby granted, to either redistribute and/or modify this file, provided that the conditions mentioned in the file COPYING are met. Consult the file for details.

Warning
  Symbols prefixed with either RBIMPL or rbimpl are implementation details. Don't take them as canon. They could rapidly appear then vanish. The name (path) of this header file is also an implementation detail. Do not expect it to persist at the place it is now. Developers are free to move it anywhere anytime at will.

Note
  To ruby-core: remember that this header can be possibly recursively included from extension libraries written in C++. Do not expect for instance __VA_ARGS__ is always available. We assume C99 for ruby itself but we don't assume languages of extension libraries. They could be written in C++98.

Definition in file re.h.

## Function Documentation

## ◆ rb_enc_reg_new()

VALUE rb_enc_reg_new | ( | const char * | ptr,
|  | long | len,
|  | rb_encoding * | enc,
|  | int | opts )

Identical to rb_reg_new(), except it additionally takes an encoding.

Parameters

  [in] | ptr | A memory region of len bytes length.
  [in] | len | Length of ptr, in bytes, not including the terminating NUL character.
  [in] | enc | Encoding of ptr.
  [in] | opts | Options e.g. ONIG_OPTION_MULTILINE.

Exceptions

  rb_eRegexpError | Failed to compile `ptr`.

Returns
  An allocated new instance of rb_cRegexp, of enc encoding, whose expression is compiled according to ptr.

Definition at line 3442 of file re.c.

Referenced by rb_reg_new().