Beispiel #1
0
        T ICloneable2.DeepClone <T>()
        {
            var clone = Method != null ? new Sig(Method, InvocationStyle) :
                        new Sig(Syms.Select(p => p.DeepClone()), Ret);

            clone._protoId = _protoId;
            return((T)(Object)clone);
        }
Beispiel #2
0
 public override int GetHashCode()
 {
     if (_lambda != null)
     {
         return(_lambda.GetHashCode());
     }
     return(Syms.Fold(InvocationStyle.SafeHashCode() ^ Ret.SafeHashCode(), (h, p) => h ^ p.SafeHashCode()));
 }
Beispiel #3
0
 ptr <Link> ctxt = addr(new Link(Syms: sym.NewSymbols(), Out:&OutBuf {