コード例 #1
0
ファイル: CreateFunction.cs プロジェクト: loki3/loki-pl1
 /// <summary>Transform a node into something we can use as a body</summary>
 internal static Value UseNodeAsBody(DelimiterNode bodyNode)
 {
     if (bodyNode.List.Delimiter.DelimiterType == DelimiterType.AsArray)
     {
         List<DelimiterList> body = new List<DelimiterList>();
         List<DelimiterNode> originalList = bodyNode.List.Nodes;
         foreach (DelimiterNode node in originalList)
         {
             IScope scope = node.List.Scope;
             DelimiterList dList = new DelimiterList(ValueDelimiter.Line, node.List.Nodes, 0, "", node.ToString(), scope);
             body.Add(dList);
         }
         return new ValueLine(body, bodyNode.List.Scope);
     }
     else
     {
         IScope scope = bodyNode.List.Scope;
         DelimiterList dList = new DelimiterList(ValueDelimiter.Line, bodyNode.List.Nodes, 0, "", bodyNode.ToString(), scope);
         List<DelimiterList> body = new List<DelimiterList>();
         body.Add(dList);
         return new ValueLine(body, scope);
     }
 }