本文整理汇总了C#中Mono.CSharp.ResumableStatement类的典型用法代码示例。如果您正苦于以下问题:C# ResumableStatement类的具体用法?C# ResumableStatement怎么用?C# ResumableStatement使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ResumableStatement类属于Mono.CSharp命名空间,在下文中一共展示了ResumableStatement类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AddResumePoint
public int AddResumePoint(ResumableStatement stmt)
{
if (resume_points == null)
resume_points = new List<ResumableStatement> ();
resume_points.Add (stmt);
return resume_points.Count;
}
示例2: CheckRethrow
/*
public override bool CheckRethrow (Location loc)
{
return CurrentUsageVector.Next != null || Parent.CheckRethrow (loc);
}
*/
public override bool AddResumePoint (ResumableStatement stmt, out int pc)
{
pc = async_init.AddResumePoint (stmt);
return true;
}
示例3: AddResumePoint
public override bool AddResumePoint (ResumableStatement stmt, out int pc)
{
int errors = Report.Errors;
Parent.AddResumePoint (this.stmt, out pc);
if (errors == Report.Errors) {
if (finally_vector == null)
this.stmt.AddResumePoint (stmt, pc);
else {
if (stmt is AwaitStatement) {
Report.Error (1984, stmt.loc, "The `await' operator cannot be used in the body of a finally clause");
} else {
Report.Error (1625, stmt.loc, "Cannot yield in the body of a finally clause");
}
}
}
return true;
}
示例4: AddResumePoint
public override bool AddResumePoint (ResumableStatement stmt, Location loc, out int pc)
{
int errors = Report.Errors;
Parent.AddResumePoint (this.stmt, loc, out pc);
if (errors == Report.Errors) {
if (finally_vector == null)
this.stmt.AddResumePoint (stmt, pc);
else
Report.Error (1625, loc, "Cannot yield in the body of a finally clause");
}
return true;
}
示例5: AddResumePoint
public void AddResumePoint (ResumableStatement stmt, int pc)
{
if (resume_points == null) {
resume_points = new List<ResumableStatement> ();
first_resume_pc = pc;
}
if (pc != first_resume_pc + resume_points.Count)
throw new InternalErrorException ("missed an intervening AddResumePoint?");
resume_points.Add (stmt);
}