Home | History | Annotate | Line # | Download | only in dmd
      1      1.1  mrg 
      2      1.1  mrg /* Compiler implementation of the D programming language
      3  1.1.1.2  mrg  * Copyright (C) 2009-2022 by The D Language Foundation, All Rights Reserved
      4      1.1  mrg  * written by Walter Bright
      5  1.1.1.2  mrg  * https://www.digitalmars.com
      6      1.1  mrg  * Distributed under the Boost Software License, Version 1.0.
      7  1.1.1.2  mrg  * https://www.boost.org/LICENSE_1_0.txt
      8  1.1.1.2  mrg  * https://github.com/dlang/dmd/blob/master/src/dmd/aliasthis.h
      9      1.1  mrg  */
     10      1.1  mrg 
     11      1.1  mrg #pragma once
     12      1.1  mrg 
     13  1.1.1.2  mrg #include "globals.h"
     14      1.1  mrg #include "dsymbol.h"
     15      1.1  mrg 
     16      1.1  mrg /**************************************************************/
     17      1.1  mrg 
     18      1.1  mrg class AliasThis : public Dsymbol
     19      1.1  mrg {
     20      1.1  mrg public:
     21      1.1  mrg    // alias Identifier this;
     22      1.1  mrg     Identifier *ident;
     23  1.1.1.2  mrg     Dsymbol    *sym;
     24  1.1.1.2  mrg     bool       isDeprecated_;
     25      1.1  mrg 
     26  1.1.1.2  mrg     AliasThis *syntaxCopy(Dsymbol *);
     27      1.1  mrg     const char *kind() const;
     28      1.1  mrg     AliasThis *isAliasThis() { return this; }
     29      1.1  mrg     void accept(Visitor *v) { v->visit(this); }
     30  1.1.1.2  mrg     bool isDeprecated() const { return this->isDeprecated_; }
     31      1.1  mrg };
     32