115103Sphk 215103Sphk/* Compiler implementation of the D programming language 315103Sphk * Copyright (C) 2009-2019 by The D Language Foundation, All Rights Reserved 415103Sphk * written by Walter Bright 515103Sphk * http://www.digitalmars.com 615103Sphk * Distributed under the Boost Software License, Version 1.0. 715103Sphk * http://www.boost.org/LICENSE_1_0.txt 815103Sphk * https://github.com/dlang/dmd/blob/master/src/aliasthis.h 915103Sphk */ 1015103Sphk 1115103Sphk#pragma once 1215103Sphk 1315103Sphk#include "dsymbol.h" 1415103Sphk 1515103Sphk/**************************************************************/ 1615103Sphk 1715103Sphkclass AliasThis : public Dsymbol 1815103Sphk{ 1915103Sphkpublic: 2015103Sphk // alias Identifier this; 2115103Sphk Identifier *ident; 2215103Sphk 2315103Sphk AliasThis(Loc loc, Identifier *ident); 2415103Sphk 2515103Sphk Dsymbol *syntaxCopy(Dsymbol *); 2615103Sphk void semantic(Scope *sc); 2715103Sphk const char *kind() const; 2815103Sphk AliasThis *isAliasThis() { return this; } 2915103Sphk void accept(Visitor *v) { v->visit(this); } 3015103Sphk}; 3115103Sphk