void Visitor.Visit(BeanKey type) { if (type.IsNeedNegativeCheck) { sw.WriteLine(prefix + "if (" + varname + ".NegativeCheck()) return true;"); } }
public void Visit(BeanKey type) { sw.WriteLine(prefix + "public " + TypeName.GetName(type) + " " + var.NameUpper1); sw.WriteLine(prefix + "{"); sw.WriteLine(prefix + " get"); sw.WriteLine(prefix + " {"); sw.WriteLine(prefix + " if (false == this.IsManaged)"); sw.WriteLine(prefix + " return " + var.NamePrivate + ";"); sw.WriteLine(prefix + " var txn = Zeze.Transaction.Transaction.Current;"); sw.WriteLine(prefix + " if (txn == null) return " + var.NamePrivate + ";"); sw.WriteLine(prefix + " txn.VerifyRecordAccessed(this, true);"); sw.WriteLine(prefix + " var log = (Log_" + var.NamePrivate + ")txn.GetLog(this.ObjectId + " + var.Id + ");"); sw.WriteLine(prefix + " return log != null ? log.Value : " + var.NamePrivate + ";"); sw.WriteLine(prefix + " }"); sw.WriteLine(prefix + " set"); sw.WriteLine(prefix + " {"); sw.WriteLine(prefix + " if (null == value)"); sw.WriteLine(prefix + " throw new System.ArgumentNullException();"); sw.WriteLine(prefix + " if (false == this.IsManaged)"); sw.WriteLine(prefix + " {"); sw.WriteLine(prefix + " " + var.NamePrivate + " = value;"); sw.WriteLine(prefix + " return;"); sw.WriteLine(prefix + " }"); sw.WriteLine(prefix + " var txn = Zeze.Transaction.Transaction.Current;"); sw.WriteLine(prefix + " txn.VerifyRecordAccessed(this);"); sw.WriteLine(prefix + " txn.PutLog(new Log_" + var.NamePrivate + "(this, value));"); // sw.WriteLine(prefix + " }"); sw.WriteLine(prefix + "}"); sw.WriteLine(); }
public static void Make(BeanKey bean, System.IO.StreamWriter sw, String prefix) { sw.WriteLine(prefix + "public override int GetHashCode()"); sw.WriteLine(prefix + "{"); sw.WriteLine(prefix + " const int _prime_ = 31;"); sw.WriteLine(prefix + " int _h_ = 0;"); foreach (Variable var in bean.Variables) { HashCode e = new HashCode(var.NamePrivate); var.VariableType.Accept(e); sw.WriteLine(prefix + " _h_ = _h_ * _prime_ + " + e.text + ";"); } sw.WriteLine(prefix + " return _h_;"); sw.WriteLine(prefix + "}"); sw.WriteLine(""); }
public void Visit(BeanKey type) { if (id >= 0) { sw.WriteLine(prefix + bufname + ".WriteInt(Zeze.ByteBuffer.BEAN | " + id + " << Zeze.ByteBuffer.TAG_SHIFT);"); sw.WriteLine(prefix + "{"); sw.WriteLine(prefix + " var _state_ = " + bufname + ".BeginWriteSegment();"); sw.WriteLine(prefix + " " + varname + ".Encode(" + bufname + ");"); sw.WriteLine(prefix + " " + bufname + ".EndWriteSegment(_state_);"); sw.WriteLine(prefix + "}"); } else { sw.WriteLine(prefix + varname + ".Encode(" + bufname + ");"); } }
void Visitor.Visit(BeanKey type) { if (id >= 0) { sw.WriteLine(prefix + "case (Zeze.ByteBuffer.BEAN | " + id + " << Zeze.ByteBuffer.TAG_SHIFT): "); sw.WriteLine(prefix + " {"); sw.WriteLine(prefix + " var _state_ = " + bufname + ".BeginReadSegment();"); sw.WriteLine(prefix + " " + varname + ".Decode(" + bufname + ");"); sw.WriteLine(prefix + " " + bufname + ".EndReadSegment(_state_);"); sw.WriteLine(prefix + " }"); sw.WriteLine(prefix + " break;"); } else { sw.WriteLine(prefix + varname + ".Decode(" + bufname + ");"); } }
public static void Make(BeanKey bean, System.IO.StreamWriter sw, String prefix) { sw.WriteLine(prefix + "public int CompareTo(object _o1_)"); sw.WriteLine(prefix + "{"); sw.WriteLine(prefix + " if (_o1_ == this) return 0;"); sw.WriteLine(prefix + " if (_o1_ is " + bean.Name + " _o_)"); sw.WriteLine(prefix + " {"); sw.WriteLine(prefix + " int _c_" + (bean.Variables.Count > 0 ? ";" : " = 0;")); foreach (Variable var in bean.Variables) { Compare e = new Compare(var, "_o_"); var.VariableType.Accept(e); sw.WriteLine(prefix + " _c_ = " + e.text + ";"); sw.WriteLine(prefix + " if (0 != _c_) return _c_;"); } sw.WriteLine(prefix + " return _c_;"); sw.WriteLine(prefix + " }"); sw.WriteLine(prefix + " throw new System.Exception(\"CompareTo: another object is not " + bean.FullName + "\");"); sw.WriteLine(prefix + "}"); sw.WriteLine(""); }
public void Visit(BeanKey type) { String typeName = TypeName.GetName(type); sw.WriteLine(prefix + variable.NamePrivate + " = new " + typeName + "();"); }
void Visitor.Visit(BeanKey type) { text = (isEquals ? "" : "!") + var.NamePrivate + ".Equals(" + another + "." + var.NamePrivate + ")"; }
void Visitor.Visit(BeanKey type) { Type = Zeze.Serialize.ByteBuffer.BEAN; TypeBeanTypeId = type.TypeId; }
public void Visit(BeanKey type) { name = type.Space.Path("_", type.Name); }
void Visitor.Visit(BeanKey type) { ChangeVariableCollectorName = "Zeze.Transaction.ChangeVariableCollectorChanged()"; }
public void Visit(BeanKey type) { text = varname + ".GetHashCode()"; }
public void Visit(BeanKey type) { DefineNew(type); }
public void Visit(BeanKey type) { WriteProperty(type); }
void Visitor.Visit(BeanKey type) { Value = "null"; }
public void Visit(BeanKey type) { text = variable.NamePrivate + ".CompareTo(" + another + "." + variable.NamePrivate + ")"; }
public void Visit(BeanKey type) { WriteLogValue(type); }
void Visitor.Visit(BeanKey type) { Name = "Zeze.ByteBuffer.BEAN"; }
void Visitor.Visit(BeanKey type) { sw.WriteLine(prefix + $"sb.Append(new string(' ', level * 4)).Append(\"{var}\").Append(\"=\").Append(Environment.NewLine);"); sw.WriteLine(prefix + var + ".BuildString(sb, level + 1);"); sw.WriteLine(prefix + $"sb.Append(\"{sep}\").Append(Environment.NewLine);"); }