/// <summary>
        /// Creates a new rendering context.
        /// </summary>
        /// <param name="environments"></param>
        /// <param name="outerScope"></param>
        /// <param name="registers"></param>
        /// <param name="errorsOutputMode"></param>
        public Context(
            List <Hash> environments,
            Hash outerScope,
            Hash registers,
            ErrorsOutputMode errorsOutputMode,
            int maxIterations,
            int timeout,
            IFormatProvider formatProvider)
        {
            this.Environments = environments;

            this.Scopes = new List <Hash>();
            if (outerScope != null)
            {
                this.Scopes.Add(outerScope);
            }

            this.Registers = registers;

            this.Errors           = new List <Exception>();
            this.errorsOutputMode = errorsOutputMode;
            this.maxIterations    = maxIterations;
            this.timeout          = timeout;
            this.FormatProvider   = formatProvider;

            this.RestartTimeout();

            this.SquashInstanceAssignsWithEnvironments();
        }
예제 #2
0
        /// <summary>
        /// Creates a new rendering context
        /// </summary>
        /// <param name="environments"></param>
        /// <param name="outerScope"></param>
        /// <param name="registers"></param>
        /// <param name="errorsOutputMode"></param>
        /// <param name="maxIterations"></param>
        /// <param name="formatProvider"></param>
        /// <param name="cancellationToken"></param>
        public Context
            (List <Hash> environments
            , Hash outerScope
            , Hash registers
            , ErrorsOutputMode errorsOutputMode
            , int maxIterations
            , IFormatProvider formatProvider
            , CancellationToken cancellationToken)
        {
            Environments = environments;

            Scopes = new List <Hash>();
            if (outerScope != null)
            {
                Scopes.Add(outerScope);
            }

            Registers = registers;

            Errors             = new List <Exception>();
            _errorsOutputMode  = errorsOutputMode;
            _maxIterations     = maxIterations;
            _cancellationToken = cancellationToken;
            FormatProvider     = formatProvider;

            SquashInstanceAssignsWithEnvironments();
        }
예제 #3
0
        /// <summary>
        /// Creates a new rendering context
        /// </summary>
        /// <param name="environments"></param>
        /// <param name="outerScope"></param>
        /// <param name="registers"></param>
        /// <param name="errorsOutputMode"></param>
        /// <param name="maxIterations"></param>
        /// <param name="formatProvider">A CultureInfo instance that will be used to parse filter input and format filter output</param>
        /// <param name="cancellationToken"></param>
        public Context
            (List <Hash> environments
            , Hash outerScope
            , Hash registers
            , ErrorsOutputMode errorsOutputMode
            , int maxIterations
            , IFormatProvider formatProvider
            , CancellationToken cancellationToken)
        {
            Environments = environments;

            Scopes = new List <Hash>();
            if (outerScope != null)
            {
                Scopes.Add(outerScope);
            }

            Registers = registers;

            Errors                   = new List <Exception>();
            _errorsOutputMode        = errorsOutputMode;
            _maxIterations           = maxIterations;
            _cancellationToken       = cancellationToken;
            FormatProvider           = formatProvider;
            SyntaxCompatibilityLevel = Template.DefaultSyntaxCompatibilityLevel;
            UseRubyDateFormat        = Liquid.UseRubyDateFormat;

            SquashInstanceAssignsWithEnvironments();
        }
예제 #4
0
 public Context
     (List <Hash> environments
     , Hash outerScope
     , Hash registers
     , ErrorsOutputMode errorsOutputMode
     , int maxIterations
     , int timeout
     , IFormatProvider formatProvider)
     : this(environments, outerScope, registers, errorsOutputMode, maxIterations, formatProvider, CancellationToken.None)
 {
     _timeout = timeout;
     RestartTimeout();
 }