You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.3 KiB
33 lines
1.3 KiB
/*-----------------------------------------------------------------------------
|
|
Microsoft Fusion
|
|
|
|
Microsoft Confidential
|
|
Copyright (c) Microsoft Corporation. All Rights Reserved.
|
|
|
|
@doc external
|
|
@module fusionpreprocessorcharize.h
|
|
|
|
@owner JayKrell
|
|
-----------------------------------------------------------------------------*/
|
|
#if !defined(VS_COMMON_INC_FUSION_PREPROCESSORCHARIZE_H_INCLUDED_) // {
|
|
#define VS_COMMON_INC_FUSION_PREPROCESSORCHARIZE_H_INCLUDED_
|
|
/*#pragma once ends up in .rgi, which is bad, so do not do it*/
|
|
|
|
#include "fusionpreprocessorpaste.h"
|
|
|
|
#define FusionpPrivatePreprocessorCharize(x) #@ x
|
|
|
|
/*-----------------------------------------------------------------------------
|
|
Name: SxApwPreprocessorCharize, SxApwPreprocessorCharizeW
|
|
@macro
|
|
These macros simply charize their parameter, after evaluating it;
|
|
it is evaluated so that
|
|
define A B
|
|
SxApwPreprocessorCharize(A) -> 'B' instead of 'A'
|
|
SxApwPreprocessorCharizeW(A) -> 'B' instead of L'A'
|
|
@owner JayKrell
|
|
-----------------------------------------------------------------------------*/
|
|
#define FusionpPreprocessorCharize(x) FusionpPrivatePreprocessorCharize(x)
|
|
#define FusionpPreprocessorCharizeW(x) FusionpPreprocessorPaste(L, FusionpPrivatePreprocessorCharize(x))
|
|
|
|
#endif // }
|