using System;
using System.Reflection;
namespace Cryville.Common.Pdt {
///
/// Interpreter for fragments in Property Definition Tree (PDT) file format.
///
public class PdtFragmentInterpreter : PdtInterpreter {
public PdtFragmentInterpreter() : base(null, new EmptyBinder()) { }
///
/// Sets the new source string for the fragment interpreter and resets the position.
///
/// The new source string.
public void SetSource(string value) {
Source = value;
Position = 0;
}
///
/// The binder.
///
public Binder Binder {
get { return _binder; }
set { _binder = value; }
}
///
/// Reads the current character and increments the position.
///
/// The current character.
/// The end of the source string is reached.
public new char GetChar() { return base.GetChar(); }
///
/// Reads an identifier.
///
/// An identifier.
/// The end of the source string is reached.
public new string GetIdentifier() { return base.GetIdentifier(); }
///
/// Reads a number.
///
/// A number.
/// The end of the source string is reached.
public new string GetNumber() { return base.GetNumber(); }
///
/// Reads a string.
///
/// A string.
/// The end of the source string is reached.
public new string GetString() { return base.GetString(); }
///
/// Reads an expression.
///
/// An expression.
/// The end of the source string is reached.
public new PdtExpression GetExp() { return base.GetExp(); }
}
}