mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-04-29 23:11:29 +02:00
First merge of 2.064 beta.
This corresponds to DMD commit a913ce4bc59a94a022a27e390fc841f4aededffb. Doesn't build Phobos yet.
This commit is contained in:
committed by
Kai Nacke
parent
c400d180d2
commit
cb341586e3
@@ -1,6 +1,6 @@
|
||||
|
||||
// Compiler implementation of the D programming language
|
||||
// Copyright (c) 1999-2007 by Digital Mars
|
||||
// Copyright (c) 1999-2013 by Digital Mars
|
||||
// All Rights Reserved
|
||||
// written by Walter Bright
|
||||
// http://www.digitalmars.com
|
||||
@@ -18,37 +18,41 @@
|
||||
#include "dsymbol.h"
|
||||
|
||||
|
||||
struct Identifier;
|
||||
class Identifier;
|
||||
struct Scope;
|
||||
struct OutBuffer;
|
||||
struct Module;
|
||||
struct Package;
|
||||
struct AliasDeclaration;
|
||||
class Module;
|
||||
class Package;
|
||||
class AliasDeclaration;
|
||||
struct HdrGenState;
|
||||
|
||||
struct Import : Dsymbol
|
||||
class Import : public Dsymbol
|
||||
{
|
||||
public:
|
||||
/* static import aliasId = pkg1.pkg2.id : alias1 = name1, alias2 = name2;
|
||||
*/
|
||||
|
||||
Identifiers *packages; // array of Identifier's representing packages
|
||||
Identifier *id; // module Identifier
|
||||
Identifier *aliasId;
|
||||
int isstatic; // !=0 if static import
|
||||
enum PROT protection;
|
||||
PROT protection;
|
||||
|
||||
// Pairs of alias=name to bind into current namespace
|
||||
Identifiers names;
|
||||
Identifiers aliases;
|
||||
|
||||
AliasDeclarations aliasdecls; // AliasDeclarations for names/aliases
|
||||
|
||||
Module *mod;
|
||||
Package *pkg; // leftmost package/module
|
||||
|
||||
Import(Loc loc, Identifiers *packages, Identifier *id, Identifier *aliasId,
|
||||
int isstatic);
|
||||
void addAlias(Identifier *name, Identifier *alias);
|
||||
|
||||
AliasDeclarations aliasdecls; // corresponding AliasDeclarations for alias=name pairs
|
||||
|
||||
Module *mod;
|
||||
Package *pkg; // leftmost package/module
|
||||
|
||||
const char *kind();
|
||||
enum PROT prot();
|
||||
PROT prot();
|
||||
Dsymbol *syntaxCopy(Dsymbol *s); // copy only syntax trees
|
||||
void load(Scope *sc);
|
||||
void importAll(Scope *sc);
|
||||
@@ -57,7 +61,7 @@ struct Import : Dsymbol
|
||||
Dsymbol *toAlias();
|
||||
int addMember(Scope *sc, ScopeDsymbol *s, int memnum);
|
||||
Dsymbol *search(Loc loc, Identifier *ident, int flags);
|
||||
int overloadInsert(Dsymbol *s);
|
||||
bool overloadInsert(Dsymbol *s);
|
||||
void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
|
||||
void toJson(JsonOut *json);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user