Пример #1
0
        /// <summary>
        /// Get an argument of one of the matching patterns.
        /// </summary>
        public object GetArgument(OptimizerPatternArgument argNum)
        {
            object arg = null;

            switch ((int)argNum)
            {
            case 0: arg = _arg0; break;

            case 1: arg = _arg1; break;

            case 2: arg = _arg2; break;
            }

            Debug.Assert(arg != null, "There is no '" + argNum + "' argument.");
            return(arg);
        }
Пример #2
0
        /// <summary>
        /// Add an argument to one of the matching patterns.
        /// </summary>
        public void AddArgument(OptimizerPatternArgument argId, object arg)
        {
            Debug.Assert(!_isReadOnly, "This OptimizerPatterns instance is read-only.");

            switch ((int)argId)
            {
            case 0: _arg0 = arg; break;

            case 1: _arg1 = arg; break;

            case 2: _arg2 = arg; break;

            default:
                Debug.Fail("Cannot handle more than 2 arguments.");
                break;
            }
        }
Пример #3
0
        /// <summary>
        /// Get an argument of one of the matching patterns.
        /// </summary>
        public object GetArgument(OptimizerPatternArgument argNum) {
            object arg = null;

            switch ((int) argNum) {
                case 0: arg = this.arg0; break;
                case 1: arg = this.arg1; break;
                case 2: arg = this.arg2; break;
            }

            Debug.Assert(arg != null, "There is no '" + argNum + "' argument.");
            return arg;
        }
Пример #4
0
        /// <summary>
        /// Add an argument to one of the matching patterns.
        /// </summary>
        public void AddArgument(OptimizerPatternArgument argId, object arg) {
            Debug.Assert(!this.isReadOnly, "This OptimizerPatterns instance is read-only.");

            switch ((int) argId) {
                case 0: this.arg0 = arg; break;
                case 1: this.arg1 = arg; break;
                case 2: this.arg2 = arg; break;
                default:
                    Debug.Assert(false, "Cannot handle more than 2 arguments.");
                    break;
            }
        }