Module: LogStash::Config::AST
  
  
  
  
  
  
  
  
  
  
  
  
    - Defined in:
- lib/logstash/config/config_ast.rb
 
Defined Under Namespace
  
    
      Modules: BooleanOperator, ComparisonExpression, ComparisonOperator, Expression, InExpression, NegativeExpression, NotInExpression, RegExpOperator, Unicode
    
  
    
      Classes: Array, Attribute, Bareword, Branch, BranchEntry, BranchOrPlugin, Comment, Condition, Config, Else, Elsif, Hash, HashEntries, HashEntry, If, MethodCall, Name, Node, Number, Plugin, PluginSection, Plugins, RValue, RegExp, RegexpExpression, Selector, SelectorElement, String, Value, Whitespace
    
  
  
    
      Constant Summary
      collapse
    
    
      
        - PROCESS_ESCAPE_SEQUENCES =
          
        
- :process_escape_sequences 
- MUTEX =
          
  
    
  This constant is part of a private API.
  You should avoid using this constant if possible, as it may be removed or be changed in the future.
 
 
 
  
 
- Mutex.new 
      Class Method Summary
      collapse
    
    
  
  
    Class Method Details
    
      
  
  
    .deferred_conditionals  ⇒ Object 
  
  
  
  
    | 
28
29
30
31 | # File 'lib/logstash/config/config_ast.rb', line 28
def deferred_conditionals
  ensure_exclusive!
  @deferred_conditionals
end | 
 
    
      
  
  
    .deferred_conditionals=(val)  ⇒ Object 
  
  
  
  
    | 
23
24
25
26 | # File 'lib/logstash/config/config_ast.rb', line 23
def deferred_conditionals=(val)
  ensure_exclusive!
  @deferred_conditionals = val
end | 
 
    
      
  
  
    .deferred_conditionals_index  ⇒ Object 
  
  
  
  
    | 
33
34
35
36 | # File 'lib/logstash/config/config_ast.rb', line 33
def deferred_conditionals_index
  ensure_exclusive!
  @deferred_conditionals_index
end | 
 
    
      
  
  
    .deferred_conditionals_index=(val)  ⇒ Object 
  
  
  
  
    | 
38
39
40
41 | # File 'lib/logstash/config/config_ast.rb', line 38
def deferred_conditionals_index=(val)
  ensure_exclusive!
  @deferred_conditionals_index = val
end | 
 
    
      
  
  
    .exclusive  ⇒ Object 
  
  
  
  
    
Executes the given block with exclusive access to the AST global variables
   
 
  
    | 
19
20
21 | # File 'lib/logstash/config/config_ast.rb', line 19
def exclusive
  MUTEX.synchronize { yield }
end | 
 
    
      
  
  
    .plugin_instance_index  ⇒ Object 
  
  
  
  
    | 
43
44
45
46 | # File 'lib/logstash/config/config_ast.rb', line 43
def plugin_instance_index
  ensure_exclusive!
  @plugin_instance_index
end | 
 
    
      
  
  
    .plugin_instance_index=(val)  ⇒ Object 
  
  
  
  
    | 
48
49
50
51 | # File 'lib/logstash/config/config_ast.rb', line 48
def plugin_instance_index=(val)
  ensure_exclusive!
  @plugin_instance_index = val
end |