Yes, this ability of CLR to grok names with whitespaces is used for a long time by Nemerle guys in their
unit-testing DSL (their site seems to be down but contents can be found in
google cache, for example).
Yes, this ability of CLR to grok names with whitespaces is used for a long time by Nemerle guys in their
unit-testing DSL (their site seems to be down but contents can be found in
google cache, for example).
You can also call it by C# code, just use something like administrators\u0020can\u0020always\u0020login. C# allows unicode escapes in identifier names. See the language specification ECMA-334, section 9.4.2 Identifiers. This is a valid example from this section:
Comments
hehe, that's funny. Díd you use ILASM to create that?
No, Boo DSL based on XML storage.
Freaky stuff
Yeah, sorta the basis of much obfuscation software: just rename members to use something in the Unicode set that C#/VB/etc doesn't support...
I wonder if that were part of the changes for the C++/CLR version, where has things like "for each" being a single keyword.
Why are you specifying an hour value in hex?
That is a Reflector setting
Hmm, it is surprising that they allow that.
Yes, this ability of CLR to grok names with whitespaces is used for a long time by Nemerle guys in their unit-testing DSL (their site seems to be down but contents can be found in google cache, for example).
Yes, this ability of CLR to grok names with whitespaces is used for a long time by Nemerle guys in their unit-testing DSL (their site seems to be down but contents can be found in google cache, for example).
Do you have a feed for the comments on your blog Oren?
Andres,
Not that I know of.
If SubText has it, then probably
That's nice is there any way to call it from C#?
Not really, no.
VB probably can, though
You can also call it by C# code, just use something like administrators\u0020can\u0020always\u0020login. C# allows unicode escapes in identifier names. See the language specification ECMA-334, section 9.4.2 Identifiers. This is a valid example from this section:
class @class
{
public static void @static(bool @bool) {
if (@bool)
System.Console.WriteLine("true");
else
System.Console.WriteLine("false");
}
}
class Class1
{
static void M() {
cl\u0061ss.st\u0061tic(true);
}
}
Thomas,
Thanks, it is good to know.
Scary as hell, too.