Esempio n. 1
0
 void Visitor.Visit(BeanKey type)
 {
     if (type.IsNeedNegativeCheck)
     {
         sw.WriteLine(prefix + "if (" + varname + ".NegativeCheck()) return true;");
     }
 }
Esempio n. 2
0
 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();
 }
Esempio n. 3
0
 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("");
 }
Esempio n. 4
0
 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 + ");");
     }
 }
Esempio n. 5
0
 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 + ");");
     }
 }
Esempio n. 6
0
 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("");
 }
Esempio n. 7
0
        public void Visit(BeanKey type)
        {
            String typeName = TypeName.GetName(type);

            sw.WriteLine(prefix + variable.NamePrivate + " = new " + typeName + "();");
        }
Esempio n. 8
0
 void Visitor.Visit(BeanKey type)
 {
     text = (isEquals ? "" : "!") + var.NamePrivate + ".Equals(" + another + "." + var.NamePrivate + ")";
 }
Esempio n. 9
0
 void Visitor.Visit(BeanKey type)
 {
     Type           = Zeze.Serialize.ByteBuffer.BEAN;
     TypeBeanTypeId = type.TypeId;
 }
Esempio n. 10
0
 public void Visit(BeanKey type)
 {
     name = type.Space.Path("_", type.Name);
 }
Esempio n. 11
0
 void Visitor.Visit(BeanKey type)
 {
     ChangeVariableCollectorName = "Zeze.Transaction.ChangeVariableCollectorChanged()";
 }
Esempio n. 12
0
 public void Visit(BeanKey type)
 {
     text = varname + ".GetHashCode()";
 }
Esempio n. 13
0
 public void Visit(BeanKey type)
 {
     DefineNew(type);
 }
Esempio n. 14
0
 public void Visit(BeanKey type)
 {
     WriteProperty(type);
 }
Esempio n. 15
0
 void Visitor.Visit(BeanKey type)
 {
     Value = "null";
 }
Esempio n. 16
0
 public void Visit(BeanKey type)
 {
     text = variable.NamePrivate + ".CompareTo(" + another + "." + variable.NamePrivate + ")";
 }
Esempio n. 17
0
 public void Visit(BeanKey type)
 {
     WriteLogValue(type);
 }
Esempio n. 18
0
 void Visitor.Visit(BeanKey type)
 {
     Name = "Zeze.ByteBuffer.BEAN";
 }
Esempio n. 19
0
 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);");
 }