CssToken
The base class token for the CSS parser.
using AngleSharp.Dom.Css;
using System;
using System.Diagnostics;
namespace AngleSharp.Parser.Css
{
[DebuggerStepThrough]
internal abstract class CssToken
{
private readonly CssTokenType _type;
private readonly string _data;
public CssTokenType Type => _type;
public string Data => _data;
public CssToken(CssTokenType type, string data)
{
_type = type;
_data = data;
}
[DebuggerStepThrough]
public static CssDelimToken Delim(char c)
{
return new CssDelimToken(c);
}
public virtual string ToValue()
{
return _data;
}
public ICssValue ToIdentifier()
{
if (_data.Equals(Keywords.Inherit, StringComparison.OrdinalIgnoreCase))
return CssValue.Inherit;
if (_data.Equals(Keywords.Initial, StringComparison.OrdinalIgnoreCase))
return CssValue.Initial;
return new CssIdentifier(_data);
}
}
}