Example #1
0
        public Completion ExecuteLabelledStatement(LabelledStatement labelledStatement)
        {
            labelledStatement.Body.LabelSet = labelledStatement.Label.Name;
            var result = ExecuteStatement(labelledStatement.Body);
            if (result.Type == Completion.Break && result.Identifier == labelledStatement.Label.Name)
            {
                return new Completion(Completion.Normal, result.Value, null);
            }

            return result;
        }
Example #2
0
 private void EmitLabelledStatement(LabelledStatement lstmt)
 {
     WriteSeparator();
     Write(lstmt.Label.Name + ":");
     WriteSeparator();
     Emit(lstmt.Body);
 }