Movatterモバイル変換


[0]ホーム

URL:


D Logo
Menu
Search

Library Reference

version 2.112.0

overview

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 usinga local clone.

std.demangle

Demangle D mangled names.
License:
Boost License 1.0.
Authors:
Walter Bright, Thomas Kühne, Frits van Bommel

Sourcestd/demangle.d

pure nothrow @safe stringdemangle(stringname);
Demangle D mangled names.
Parameters:
stringnamethe mangled name
Returns:
Astring. If it is not a D mangled name, it returns its argument name.
Examples:
// int b in module awriteln(demangle("_D1a1bi"));// "int a.b"// char array foo in module testwriteln(demangle("_D4test3fooAa"));// "char[] test.foo"
Examples:
This program reads standard in and writes it to standard out,pretty-printing any found D mangled names.
import std.ascii : isAlphaNum;import std.algorithm.iteration : chunkBy, joiner, map;import std.algorithm.mutation : copy;import std.conv : to;import std.demangle :demangle;import std.functional : pipe;import std.stdio : stdin, stdout;void main(){    stdin.byLineCopy        .map!(            l => l.chunkBy!(a => isAlphaNum(a) || a == '_')                  .map!(a => a[1].pipe!(to!string,demangle)).joiner        )        .copy(stdout.lockingTextWriter);}
Copyright © 1999-2026 by theD Language Foundation | Page generated byDdoc on Fri Feb 20 00:53:22 2026

[8]ページ先頭

©2009-2026 Movatter.jp