1 2/* Compiler implementation of the D programming language 3 * Copyright (C) 1999-2019 by The D Language Foundation, All Rights Reserved 4 * written by Walter Bright 5 * http://www.digitalmars.com 6 * Distributed under the Boost Software License, Version 1.0. 7 * http://www.boost.org/LICENSE_1_0.txt 8 * https://github.com/dlang/dmd/blob/master/src/version.h 9 */ 10 11#pragma once 12 13#include "dsymbol.h" 14 15class DebugSymbol : public Dsymbol 16{ 17public: 18 unsigned level; 19 20 DebugSymbol(Loc loc, Identifier *ident); 21 DebugSymbol(Loc loc, unsigned level); 22 Dsymbol *syntaxCopy(Dsymbol *); 23 24 const char *toChars(); 25 void addMember(Scope *sc, ScopeDsymbol *sds); 26 void semantic(Scope *sc); 27 const char *kind() const; 28 void accept(Visitor *v) { v->visit(this); } 29}; 30 31class VersionSymbol : public Dsymbol 32{ 33public: 34 unsigned level; 35 36 VersionSymbol(Loc loc, Identifier *ident); 37 VersionSymbol(Loc loc, unsigned level); 38 Dsymbol *syntaxCopy(Dsymbol *); 39 40 const char *toChars(); 41 void addMember(Scope *sc, ScopeDsymbol *sds); 42 void semantic(Scope *sc); 43 const char *kind() const; 44 void accept(Visitor *v) { v->visit(this); } 45}; 46