view dmd/Initializer.d @ 77:ad4792a1cfd6

more D-ification container accessing
author Eldar Insafutdinov <e.insafutdinov@gmail.com>
date Sun, 29 Aug 2010 14:36:55 +0100
parents 10317f0c89a5
children 43073c7c7769
line wrap: on
line source

module dmd.Initializer;

import dmd.Loc;
import dmd.Scope;
import dmd.Type;
import dmd.ArrayTypes;
import dmd.Expression;
import dmd.OutBuffer;
import dmd.HdrGenState;
import dmd.VoidInitializer;
import dmd.StructInitializer;
import dmd.ArrayInitializer;
import dmd.ExpInitializer;

import dmd.backend.dt_t;

class Initializer
{
    Loc loc;

    this(Loc loc)
	{
		this.loc = loc;
	}
	
    Initializer syntaxCopy()
	{
		assert(false);
	}
	
    Initializer semantic(Scope sc, Type t)
	{
		assert(false);
	}
	
    Type inferType(Scope sc)
	{
		assert(false);
	}
	
    abstract Expression toExpression();
    
	abstract void toCBuffer(OutBuffer buf, HdrGenState* hgs);
    
	string toChars()
	{
		assert(false);
	}

    static Initializers arraySyntaxCopy(Initializers *ai)
	{
		assert(false);
	}

    dt_t* toDt()
	{
		assert(false);
	}

    VoidInitializer isVoidInitializer() { return null; }
	
    StructInitializer isStructInitializer()  { return null; }
    
	ArrayInitializer isArrayInitializer()  { return null; }
    
	ExpInitializer isExpInitializer()  { return null; }
}