namespace CppSharp { /// /// Base class that describes a preprocessed entity, which may /// be a preprocessor directive or macro expansion. /// public abstract class PreprocessedEntity : Declaration { } /// /// Represents a C preprocessor macro expansion. /// public class MacroExpansion : PreprocessedEntity { // Contains the macro expansion text. public string Text; public MacroDefinition Definition; public MacroExpansion() { } public override T Visit(IDeclVisitor visitor) { //return visitor.VisitMacroExpansion(this); return default(T); } public override string ToString() { return Text; } } /// /// Represents a C preprocessor macro definition. /// public class MacroDefinition : PreprocessedEntity { // Contains the macro definition text. public string Expression; public MacroDefinition() { } public override T Visit(IDeclVisitor visitor) { return visitor.VisitMacroDefinition(this); } public override string ToString() { return Expression; } } }