using System;
using System.Collections;
using System.Xml;
namespace ABG.API.Core
{
public class CvQualifiedType: TypeBase
{
private bool isConst = false;
private bool isVolatile = false;
// This will be set when the declaration is polished.
private TypeBase type = null;
public CvQualifiedType(XmlTextReader rd): base(rd)
{
if (rd["const"] == "1")
isVolatile = true;
if (rd["volatile"] == "1")
isConst = true;
}
// Polish() required because the element type may not
// be available under all types are loaded.
protected internal override void Polish(IDictionary table)
{
base.Polish(table);
type = (TypeBase) table[attributes["type"]];
}
public TypeBase Type
{
get { return type; }
}
public bool Const
{
get { return isConst; }
}
public bool Volatile
{
get { return isVolatile; }
}
public override DeclarationKind DeclarationKind
{
get { return DeclarationKind.CvQualifiedType; }
}
}
}