Module: Jade::Frontend::SemanticAnalysis::CaseOfBranch

Extended by:
CaseOfBranch, Helper
Included in:
CaseOfBranch
Defined in:
lib/jade/frontend/semantic_analysis/case_of_branch.rb

Instance Method Summary collapse

Methods included from Helper

analyze_duplicate_fields, analyze_in_parallel, analyze_in_sequence, analyze_node, bind, collect_vars, lookup, validate_type_symbol

Instance Method Details

#analyze(node, registry, scope, entry) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'lib/jade/frontend/semantic_analysis/case_of_branch.rb', line 8

def analyze(node, registry, scope, entry)
  node => AST::CaseOfBranch(pattern:, body:)

  ptn_r = analyze_node(pattern, registry, scope, entry)
  Result.combine(node, scope:,
    pattern: ptn_r,
    body: analyze_node(body, registry, ptn_r.scope, entry),
  )
end