コード例 #1
0
ファイル: LNodeExt.cs プロジェクト: lydonchandra/Loyc
 static void AddCapture(MMap <Symbol, LNode> captures, LNode cap, Slice_ <LNode> items)
 {
     Debug.Assert(cap.Calls(S.Substitute, 1) && cap.Args.Last.IsId);
     if (items.Count == 1)
     {
         AddCapture(captures, cap.Args.Last.Name, items[0]);
     }
     else
     {
         AddCapture(captures, cap.Args.Last.Name, F.Call(S.Splice, items));
     }
 }
コード例 #2
0
ファイル: LNodeExt.cs プロジェクト: modulexcite/ecsharp
        static void AddCapture(MMap <Symbol, LNode> captures, LNode cap, Slice_ <LNode> items)
        {
            LNode capId = GetCaptureIdentifier(cap);

            if (items.Count == 1)
            {
                AddCapture(captures, capId.Name, items[0]);
            }
            else
            {
                AddCapture(captures, capId.Name, F.Call(S.Splice, items));
            }
        }
コード例 #3
0
ファイル: LNodeExt.cs プロジェクト: qwertie/ecsharp
		static void AddCapture(MMap<Symbol, LNode> captures, LNode cap, Slice_<LNode> items)
		{
			LNode capId = GetCaptureIdentifier(cap);
			if (items.Count == 1)
				AddCapture(captures, capId.Name, items[0]);
			else
				AddCapture(captures, capId.Name, F.Call(S.Splice, items));
		}
コード例 #4
0
ファイル: LNodeExt.cs プロジェクト: lydonchandra/LoycCore
		static void AddCapture(MMap<Symbol, LNode> captures, LNode cap, Slice_<LNode> items)
		{
			Debug.Assert(cap.Calls(S.Substitute, 1) && cap.Args.Last.IsId);
			if (items.Count == 1)
				AddCapture(captures, cap.Args.Last.Name, items[0]);
			else
				AddCapture(captures, cap.Args.Last.Name, F.Call(S.Splice, items));
		}