Module: Twig

Defined in:
lib/twig/runtime/loop_context.rb,
lib/twig_ruby.rb,
lib/twig/lexer.rb,
lib/twig/token.rb,
lib/twig/parser.rb,
lib/twig/source.rb,
lib/twig/node/do.rb,
lib/twig/node/if.rb,
lib/twig/callable.rb,
lib/twig/compiler.rb,
lib/twig/node/for.rb,
lib/twig/node/set.rb,
lib/twig/template.rb,
lib/twig/auto_hash.rb,
lib/twig/cache/nil.rb,
lib/twig/node/base.rb,
lib/twig/node/body.rb,
lib/twig/node/text.rb,
lib/twig/node/with.rb,
lib/twig/twig_test.rb,
lib/twig/cache/base.rb,
lib/twig/error/base.rb,
lib/twig/node/block.rb,
lib/twig/node/cache.rb,
lib/twig/node/embed.rb,
lib/twig/node/empty.rb,
lib/twig/node/macro.rb,
lib/twig/node/nodes.rb,
lib/twig/node/print.rb,
lib/twig/node/yield.rb,
lib/twig/environment.rb,
lib/twig/error/logic.rb,
lib/twig/loader/base.rb,
lib/twig/loader/hash.rb,
lib/twig/node/import.rb,
lib/twig/node/module.rb,
lib/twig/node/output.rb,
lib/twig/twig_filter.rb,
lib/twig/error/loader.rb,
lib/twig/error/syntax.rb,
lib/twig/loader/chain.rb,
lib/twig/node/capture.rb,
lib/twig/node/include.rb,
lib/twig/rails/config.rb,
lib/twig/rails/engine.rb,
lib/twig/token_stream.rb,
lib/twig/error/runtime.rb,
lib/twig/extension_set.rb,
lib/twig/node/for_loop.rb,
lib/twig/output_buffer.rb,
lib/twig/twig_function.rb,
lib/twig/extension/base.rb,
lib/twig/extension/core.rb,
lib/twig/node_traverser.rb,
lib/twig/rails/renderer.rb,
lib/twig/runtime/spread.rb,
lib/twig/extension/debug.rb,
lib/twig/extension/rails.rb,
lib/twig/node/deprecated.rb,
lib/twig/runtime/context.rb,
lib/twig/runtime/escaper.rb,
lib/twig/token_parser/do.rb,
lib/twig/token_parser/if.rb,
lib/twig/cache/filesystem.rb,
lib/twig/node/auto_escape.rb,
lib/twig/template_wrapper.rb,
lib/twig/token_parser/for.rb,
lib/twig/token_parser/set.rb,
lib/twig/token_parser/use.rb,
lib/twig/extension/escaper.rb,
lib/twig/loader/filesystem.rb,
lib/twig/node_visitor/base.rb,
lib/twig/token_parser/base.rb,
lib/twig/token_parser/from.rb,
lib/twig/token_parser/with.rb,
lib/twig/token_parser/apply.rb,
lib/twig/token_parser/block.rb,
lib/twig/token_parser/cache.rb,
lib/twig/token_parser/embed.rb,
lib/twig/token_parser/guard.rb,
lib/twig/token_parser/macro.rb,
lib/twig/token_parser/yield.rb,
lib/twig/runtime_loader/base.rb,
lib/twig/token_parser/import.rb,
lib/twig/node/block_reference.rb,
lib/twig/node/expression/base.rb,
lib/twig/node/expression/call.rb,
lib/twig/node/expression/hash.rb,
lib/twig/node/expression/name.rb,
lib/twig/node_visitor/escaper.rb,
lib/twig/token_parser/extends.rb,
lib/twig/token_parser/include.rb,
lib/twig/node/expression/array.rb,
lib/twig/node_visitor/spreader.rb,
lib/twig/runtime/loop_iterator.rb,
lib/twig/expression_parser/base.rb,
lib/twig/node/expression/filter.rb,
lib/twig/node/expression/parent.rb,
lib/twig/runtime_loader/factory.rb,
lib/twig/extension/string_loader.rb,
lib/twig/node/expression/ternary.rb,
lib/twig/runtime/enumerable_hash.rb,
lib/twig/token_parser/deprecated.rb,
lib/twig/node/expression/constant.rb,
lib/twig/node/expression/function.rb,
lib/twig/node/expression/test/odd.rb,
lib/twig/token_parser/auto_escape.rb,
lib/twig/node/expression/binary/in.rb,
lib/twig/node/expression/binary/or.rb,
lib/twig/node/expression/test/base.rb,
lib/twig/node/expression/test/even.rb,
lib/twig/node/expression/test/null.rb,
lib/twig/node/expression/unary/not.rb,
lib/twig/runtime/argument_spreader.rb,
lib/twig/expression_parser/infix/is.rb,
lib/twig/node/expression/binary/and.rb,
lib/twig/node/expression/binary/xor.rb,
lib/twig/node/expression/filter/raw.rb,
lib/twig/node/expression/unary/base.rb,
lib/twig/node_visitor/safe_analysis.rb,
lib/twig/expression_parser/infix/dot.rb,
lib/twig/node/expression/assign_name.rb,
lib/twig/node/expression/binary/base.rb,
lib/twig/node/expression/binary/elvis.rb,
lib/twig/node/expression/test/defined.rb,
lib/twig/node/expression/test/mapping.rb,
lib/twig/node/expression/test/same_as.rb,
lib/twig/node/expression/unary/spread.rb,
lib/twig/expression_parser/infix/arrow.rb,
lib/twig/node/expression/binary/concat.rb,
lib/twig/node/expression/binary/not_in.rb,
lib/twig/node/expression/get_attribute.rb,
lib/twig/node/expression/helper_method.rb,
lib/twig/node/expression/test/constant.rb,
lib/twig/node/expression/test/iterable.rb,
lib/twig/node/expression/test/sequence.rb,
lib/twig/expression_parser/infix/binary.rb,
lib/twig/expression_parser/infix/filter.rb,
lib/twig/expression_parser/infix/is_not.rb,
lib/twig/expression_parser/prefix/unary.rb,
lib/twig/node/expression/arrow_function.rb,
lib/twig/node/expression/binary/boolean.rb,
lib/twig/node/expression/binary/matches.rb,
lib/twig/node/expression/filter/default.rb,
lib/twig/node/expression/variable/local.rb,
lib/twig/node/expression/binary/has_some.rb,
lib/twig/node/expression/block_reference.rb,
lib/twig/node/expression/macro_reference.rb,
lib/twig/node/expression/operator_escape.rb,
lib/twig/expression_parser/infix/function.rb,
lib/twig/expression_parser/prefix/literal.rb,
lib/twig/file_extension_escaping_strategy.rb,
lib/twig/node/expression/binary/ends_with.rb,
lib/twig/node/expression/binary/floor_div.rb,
lib/twig/node/expression/binary/has_every.rb,
lib/twig/node/expression/variable/context.rb,
lib/twig/expression_parser/prefix/grouping.rb,
lib/twig/node/expression/test/divisible_by.rb,
lib/twig/node/expression/unary/string_cast.rb,
lib/twig/node/expression/variable/template.rb,
lib/twig/util/callable_arguments_extractor.rb,
lib/twig/node/expression/binary/starts_with.rb,
lib/twig/expression_parser/expression_parsers.rb,
lib/twig/node/expression/binary/null_coalesce.rb,
lib/twig/node/expression/support_defined_test.rb,
lib/twig/expression_parser/infix/square_bracket.rb,
lib/twig/node/expression/variable/assign_context.rb,
lib/twig/expression_parser/infix/parses_arguments.rb,
lib/twig/node/expression/variable/assign_template.rb,
lib/twig/expression_parser/infix_expression_parser.rb,
lib/twig/expression_parser/prefix_expression_parser.rb,
lib/twig/expression_parser/infix/conditional_ternary.rb

Overview

This file is part of Twig.

© Fabien Potencier

For the full copyright and license information, please view the LICENSE file that was distributed with this source code.

Defined Under Namespace

Modules: Cache, Compiled, Error, ExpressionParser, Extension, Loader, Node, NodeVisitor, Rails, Runtime, RuntimeLoader, TokenParser, Util Classes: AutoHash, Callable, Compiler, Environment, ExtensionSet, FileExtensionEscapingStrategy, Lexer, NodeTraverser, OutputBuffer, Parser, Source, Template, TemplateWrapper, Token, TokenStream, TwigFilter, TwigFunction, TwigTest

Class Method Summary collapse

Class Method Details

.environmentEnvironment

Returns:



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/twig/rails/engine.rb', line 10

def self.environment
  @@environment ||= begin
    options = ::Twig::Rails::Config.current.slice(
      :autoescape,
      :cache,
      :debug,
      :allow_helper_methods,
      :charset,
      :strict_variables,
      :auto_reload
    )

    ::Twig::Environment.new(loader, options).tap do |env|
      env.add_extension(::Twig::Extension::Rails.new)
      env.add_extension(::Twig::Extension::Debug.new) if env.debug?
    end
  end
end

.loaderObject



29
30
31
# File 'lib/twig/rails/engine.rb', line 29

def self.loader
  @@loader ||= ::Twig::Rails::Config.current.loader.call
end