dmd.utf - D Programming Language
Description: D Programming Language
Keywords: D programming language

Menu

- Learn
- Documentation
  - Language Reference
  - Library Reference
  - Command-line Reference
  - Feature Overview
  - Articles
- Downloads
- Packages
- Community
  - Blog
  - Orgs using D
  - Twitter
  - Calendar
  - Forums
  - IRC
  - Community Discord
  - Wiki
  - GitHub
  - Issues
  - Get involved
  - Contributors
  - Foundation
  - Security Team
  - Donate
  - Sponsors
- Resources
  - Tour
  - Books
  - Tutorials
  - Tools
  - Editors
  - IDEs
  - run.dlang.io
  - Visual D
  - Acknowledgments
  - D Style
  - Glossary
  - Sitemap

Search
Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.

# dmd.utf

Compiler implementation of the D programming language.
Authors:
Walter Bright
License:
Boost License 1.0

Source utf.d

Documentation https://dlang.org/phobos/dmd_utf.html

Coverage https://codecov.io/gh/dlang/dmd/src/master/src/dmd/utf.d

pure nothrow @nogc bool `utf_isValidDchar`(dchar `c`);
  The Unicode code space is the range of code points [0x000000,0x10FFFF] except the UTF-16 surrogate pairs in the range [0xD800,0xDFFF]
pure nothrow @nogc bool `isUniAlpha`(dchar `c`);
  Return !=0 if unicode alpha. Use table from C99 Appendix D.
pure nothrow @nogc int `utf_codeLengthChar`(dchar `c`);
  Returns the code length of c in code units.
pure nothrow @nogc int `utf_codeLength`(int `sz`, dchar `c`);
  Returns the code length of c in code units for the encoding. sz is the encoding: 1 = utf8, 2 = utf16, 4 = utf32.
pure nothrow @nogc immutable(char*) `utf_decodeChar`(const(char)* `s`, size_t `len`, ref size_t `ridx`, out dchar `rresult`);
  Decode a UTF-8 sequence as a single UTF-32 code point.
  Parameters:

  const(char)* `s` | UTF-8 sequence
  size_t `len` | number of code units in s[]
  size_t `ridx` | starting index in s[], updated to reflect number of code units decoded
  dchar `rresult` | set to character decoded

  Returns:
  null on success, otherwise error message string
pure nothrow @nogc immutable(char*) `utf_decodeWchar`(const(wchar)* `s`, size_t `len`, ref size_t `ridx`, out dchar `rresult`);
  Decode a UTF-16 sequence as a single UTF-32 code point.
  Parameters:

  const(wchar)* `s` | UTF-16 sequence
  size_t `len` | number of code units in s[]
  size_t `ridx` | starting index in s[], updated to reflect number of code units decoded
  dchar `rresult` | set to character decoded

  Returns:
  null on success, otherwise error message string

Copyright © 1999-2019 by the D Language Foundation | Page generated by Ddoc on Sat Dec 14 11:07:21 2019