示例#1
0
        /// <summary>
        /// Tries conversion to an array key.
        /// </summary>
        public static bool TryToIntStringKey(PhpValue value, out IntStringKey key)
        {
            switch (value.TypeCode)
            {
            case PhpTypeCode.Int32:
            case PhpTypeCode.Long:
            case PhpTypeCode.Double:
            case PhpTypeCode.String:
            case PhpTypeCode.WritableString:
            case PhpTypeCode.Boolean:
                key = value.ToIntStringKey();
                return(true);

            case PhpTypeCode.Alias:
                return(TryToIntStringKey(value.Alias.Value, out key));

            default:
                key = default(IntStringKey);
                return(false);
            }
        }
示例#2
0
 public void SetItemValue(PhpValue index, PhpValue value) => SetItemValue(index.ToIntStringKey(), value);
示例#3
0
 /// <summary>
 /// Converts given value to an array key.
 /// </summary>
 public static IntStringKey ToIntStringKey(PhpValue value) => value.ToIntStringKey();
示例#4
0
 public void SetItemAlias(PhpValue index, PhpAlias alias) => SetItemAlias(index.ToIntStringKey(), alias);
示例#5
0
 public void RemoveKey(PhpValue index) => RemoveKey(index.ToIntStringKey());
示例#6
0
 public PhpValue GetItemValue(PhpValue index) => GetItemValue(index.ToIntStringKey());
示例#7
0
        /// <summary>
        /// Tries conversion to an array key.
        /// </summary>
        public static bool TryToIntStringKey(PhpValue value, out IntStringKey key)
        {
            switch (value.TypeCode)
            {
                case PhpTypeCode.Int32:
                case PhpTypeCode.Long:
                case PhpTypeCode.Double:
                case PhpTypeCode.String:
                case PhpTypeCode.WritableString:
                case PhpTypeCode.Boolean:
                    key = value.ToIntStringKey();
                    return true;

                case PhpTypeCode.Alias:
                    return TryToIntStringKey(value.Alias.Value, out key);

                default:
                    key = default(IntStringKey);
                    return false;
            }
        }
示例#8
0
 /// <summary>
 /// Converts given value to an array key.
 /// </summary>
 public static IntStringKey ToIntStringKey(PhpValue value) => value.ToIntStringKey();