Rhino.Arguments.DefineOwnProperty C# (CSharp) Method

DefineOwnProperty() protected method

protected DefineOwnProperty ( Context cx, object id, ScriptableObject desc, bool checkValid ) : void
cx Context
id object
desc ScriptableObject
checkValid bool
return void
		protected internal override void DefineOwnProperty(Context cx, object id, ScriptableObject desc, bool checkValid)
		{
			base.DefineOwnProperty(cx, id, desc, checkValid);
			double d = ScriptRuntime.ToNumber(id);
			int index = (int)d;
			if (d != index)
			{
				return;
			}
			object value = Arg(index);
			if (value == ScriptableConstants.NOT_FOUND)
			{
				return;
			}
			if (IsAccessorDescriptor(desc))
			{
				RemoveArg(index);
				return;
			}
			object newValue = GetProperty(desc, "value");
			if (newValue == ScriptableConstants.NOT_FOUND)
			{
				return;
			}
			ReplaceArg(index, newValue);
			if (IsFalse(GetProperty(desc, "writable")))
			{
				RemoveArg(index);
			}
		}