コード例 #1
0
ファイル: GenericKey.cs プロジェクト: Neo4Net/Neo4Net
 internal virtual void InitAsPrefixLow(TextValue prefix)
 {
     prefix.WriteTo(this);
     Long2     = FALSE;
     Inclusion = LOW;
     // Don't set ignoreLength = true here since the "low" a.k.a. left side of the range should care about length.
     // This will make the prefix lower than those that matches the prefix (their length is >= that of the prefix)
 }
コード例 #2
0
ファイル: GenericKey.cs プロジェクト: Neo4Net/Neo4Net
 internal virtual void WritePointDerived(CoordinateReferenceSystem crs, long derivedValue, NativeIndexKey.Inclusion inclusion)
 {
     if (IsArray)
     {
         throw new System.InvalidOperationException("This method is intended to be called when querying, where one or more sub-ranges are derived " + "from a queried range and each sub-range written to separate keys. " + "As such it's unexpected that this key state thinks that it's holds state for an array");
     }
     UpdateCurve(crs.Table.TableId, crs.Code);
     setType(Types.Geometry).write(this, derivedValue, _noCoordinates);
     this.Inclusion = inclusion;
 }
コード例 #3
0
ファイル: GenericKey.cs プロジェクト: Neo4Net/Neo4Net
 internal virtual void CopyMetaFrom(GenericKey key)
 {
     this.TypeConflict = key.TypeConflict;
     this.Inclusion    = key.Inclusion;
     this.IsArray      = key.IsArray;
     if (key.IsArray)
     {
         this.ArrayLength        = key.ArrayLength;
         this.CurrentArrayOffset = key.CurrentArrayOffset;
         this.IsHighestArray     = key.IsHighestArray;
     }
 }
コード例 #4
0
ファイル: GenericKey.cs プロジェクト: Neo4Net/Neo4Net
        internal virtual bool GetInternal(PageCursor cursor, int size)
        {
            if (size <= _typeIdSize)
            {
                SetCursorException(cursor, "slot size less than TYPE_ID_SIZE, " + size);
                return(false);
            }

            sbyte typeId = cursor.Byte;

            if (typeId < 0 || typeId >= Types.ById.Length)
            {
                SetCursorException(cursor, "non-valid typeId, " + typeId);
                return(false);
            }

            Inclusion = NEUTRAL;
            return(setType(Types.ById[typeId]).ReadValue(cursor, size - _typeIdSize, this));
        }
コード例 #5
0
ファイル: GenericKey.cs プロジェクト: Neo4Net/Neo4Net
 /* <initializers> */
 internal virtual void Clear()
 {
     if (TypeConflict == Types.Text && booleanOf(Long1))
     {
         // Clear byteArray if it has been dereferenced
         ByteArray = null;
     }
     TypeConflict       = null;
     Long0              = 0;
     Long1              = 0;
     Long2              = 0;
     Long3              = 0;
     Inclusion          = NEUTRAL;
     IsArray            = false;
     ArrayLength        = 0;
     IsHighestArray     = false;
     CurrentArrayOffset = 0;
     SpaceFillingCurve  = null;
 }
コード例 #6
0
ファイル: GenericKey.cs プロジェクト: Neo4Net/Neo4Net
 internal virtual void WriteValue(Value value, NativeIndexKey.Inclusion inclusion)
 {
     IsArray = false;
     value.WriteTo(this);
     this.Inclusion = inclusion;
 }
コード例 #7
0
ファイル: GenericKey.cs プロジェクト: Neo4Net/Neo4Net
 internal virtual void InitAsPrefixHigh(TextValue prefix)
 {
     prefix.WriteTo(this);
     Long2     = TRUE;           // ignoreLength
     Inclusion = HIGH;
 }
コード例 #8
0
ファイル: GenericKey.cs プロジェクト: Neo4Net/Neo4Net
 internal virtual void InitializeToDummyValueInternal()
 {
     Clear();
     WriteInteger(0);
     Inclusion = NEUTRAL;
 }