예제 #1
0
        public static Options MaxStatements(this Options options, int maxStatements = 0)
        {
            options.WithoutConstraint(x => x is MaxStatements);

            if (maxStatements > 0 && maxStatements < int.MaxValue)
            {
                options.Constraint(new MaxStatements(maxStatements));
            }
            return(options);
        }
예제 #2
0
        public static Options TimeoutInterval(this Options options, TimeSpan timeoutInterval)
        {
            options.WithoutConstraint(x => x is TimeConstraint);

            if (timeoutInterval > TimeSpan.Zero && timeoutInterval < TimeSpan.MaxValue)
            {
                options.Constraint(new TimeConstraint2(timeoutInterval));
            }
            return(options);
        }
예제 #3
0
        public static Options CancellationToken(this Options options, CancellationToken cancellationToken)
        {
            options.WithoutConstraint(x => x is CancellationConstraint);

            if (cancellationToken != default)
            {
                options.Constraint(new CancellationConstraint(cancellationToken));
            }
            return(options);
        }
예제 #4
0
        public static Options LimitMemory(this Options options, long memoryLimit)
        {
            options.WithoutConstraint(x => x is MemoryLimit);

            if (memoryLimit > 0 && memoryLimit < int.MaxValue)
            {
                options.Constraint(new MemoryLimit(memoryLimit));
            }
            return(options);
        }