24 lines
785 B
C#
24 lines
785 B
C#
using System;
|
|
using System.Text;
|
|
using System.CodeDom.Compiler;
|
|
using System.Reflection;
|
|
|
|
namespace DynamicTemplate.Compiler
|
|
{
|
|
public delegate string TemplateOperation(object[] parameters);
|
|
|
|
abstract class LanguageProvider
|
|
{
|
|
public abstract string Name { get; }
|
|
|
|
public abstract bool IsValidIdentifier(string identifier, out string errorMessage);
|
|
public abstract string NormalizeIdentifier(string identifier);
|
|
|
|
public abstract void Start(ArgumentDescription[] argDescs);
|
|
public abstract void Code(string code, Position startPos);
|
|
public abstract void Expression(string expr, Position startPos);
|
|
public abstract void Literal(string literal, Position startPos);
|
|
public abstract TemplateOperation End();
|
|
}
|
|
}
|