Class: Liquid::Increment

### Home Classes Methods

### In Files

- lib/liquid/tags/increment.rb

### Parent

Liquid::Tag

### Methods

- ::new
- #blank?
- #render

### Class/Module Index

Quicksearch

- Liquid
- Liquid::ArgumentError
- Liquid::Assign
- Liquid::BlankFileSystem
- Liquid::Block
- Liquid::Break
- Liquid::BreakInterrupt
- Liquid::Capture
- Liquid::Case
- Liquid::Comment
- Liquid::Context
- Liquid::ContextError
- Liquid::Continue
- Liquid::ContinueInterrupt
- Liquid::Cycle
- Liquid::Decrement
- Liquid::Document
- Liquid::Drop
- Liquid::ElseCondition
- Liquid::Error
- Liquid::FileSystemError
- Liquid::FilterNotFound
- Liquid::For
- Liquid::I18n
- Liquid::I18n::TranslationError
- Liquid::If
- Liquid::Ifchanged
- Liquid::Include
- Liquid::Increment
- Liquid::Interrupt
- Liquid::Lexer
- Liquid::LocalFileSystem
- Liquid::MemoryError
- Liquid::Parser
- Liquid::Raw
- Liquid::StackLevelError
- Liquid::StandardError
- Liquid::StandardFilters
- Liquid::SyntaxError
- Liquid::TableRow
- Liquid::Tag
- Liquid::Template
- Liquid::Unless
- Liquid::Utils
- Liquid::Variable
- FalseClass
- LiquidView
- Module
- NilClass
- TrueClass

No matching classes.

# Liquid::Increment

increment is used in a place where one needs to insert a counter

      into a template, and needs the counter to survive across
      multiple instantiations of the template.
      (To achieve the survival, the application must keep the context)

      if the variable does not exist, it is created with value 0.

    Hello: {% increment variable %}

gives you:

    Hello: 0
    Hello: 1
    Hello: 2

### Public Class Methods

new(tag_name, markup, tokens) click to toggle source

    # File lib/liquid/tags/increment.rb, line 18
    def initialize(tag_name, markup, tokens)
      @variable = markup.strip
      super
    end

### Public Instance Methods

blank?() click to toggle source

    # File lib/liquid/tags/increment.rb, line 29
    def blank?
      false
    end

render(context) click to toggle source

    # File lib/liquid/tags/increment.rb, line 23
    def render(context)
      value = context.environments.first[@variable] ||= 0
      context.environments.first[@variable] = value + 1
      value.to_s
    end

[Validate]

Generated with the Darkfish Rdoc Generator 2.