예제 #1
0
        public IAction CreateNewCopy()
        {
            ActionAssignInstance a = new ActionAssignInstance(_class);

            a._desc       = _desc;
            a._name       = _name;
            a._actsHolder = _actsHolder;
            if (_var != null)
            {
                a._var = (LocalVariable)_var.Clone();
            }
            a._varId       = _varId;
            a._scopeMethod = _scopeMethod;
            a._valType.CopyData(_valType);
            a._val.CopyData(_val);
            if (_condition != null)
            {
                a._condition = (ExpressionValue)_condition.Clone();
            }
            a._webActType   = _webActType;
            a._breakAfter   = _breakAfter;
            a._breakBefore  = _breakBefore;
            a._valueChanged = _valueChanged;
            a._reader       = _reader;
            a._writer       = _writer;
            a.ActionId      = (UInt32)(Guid.NewGuid().GetHashCode());
            return(a);
        }
예제 #2
0
 public object Clone()
 {
     return(new Assignment
     {
         AssignedTo = (LocalVariable)AssignedTo.Clone(),
         Right = Right.Clone()
     });
 }
예제 #3
0
 public object Clone()
 {
     return(new FieldGetter
     {
         AssignedTo = (LocalVariable)AssignedTo.Clone(),
         Instance = (LocalVariable)Instance.Clone(),
         FieldName = FieldName
     });
 }
예제 #4
0
        public override object Clone()
        {
            AB_CastAs obj = (AB_CastAs)base.Clone();

            obj.DrawingStyle = DrawingStyle;
            if (_source != null)
            {
                obj._source = (IObjectPointer)_source.Clone();
            }
            if (_target != null)
            {
                obj._target = (LocalVariable)_target.Clone();
            }
            if (_ifActions != null)
            {
                obj.TrueActions = (ActionBranch)_ifActions.Clone();
            }
            if (_elseActions != null)
            {
                obj.FalseActions = (ActionBranch)_elseActions.Clone();
            }
            return(obj);
        }
예제 #5
0
 public override LocalVariable VisitLocalVariable(LocalVariable node)
 {
     return(base.VisitLocalVariable((LocalVariable)node.Clone()));
 }
예제 #6
0
 public override LocalVariable VisitLocalVariable(LocalVariable node)
 {
     //Contract.Requires(node != null);
     Contract.Ensures(Contract.Result <LocalVariable>() != null);
     return(base.VisitLocalVariable((LocalVariable)node.Clone()));
 }