1 # coding: utf-8
2 # frozen_string_literal: true
3
4
5
6 module Umu
7
8 module ConcreteSyntax
9
10 module Core
11
12 module Expression
13
14 module Nary
15
16 module Branch
17
18 module Rule
19
20 module Case
21
22 class Abstract < Umu::Abstraction::Model
23 attr_reader :obj
24
25
26 def initialize(loc, obj)
27 ASSERT.kind_of obj, ::Object
28
29 super(loc)
30
31 @obj = obj
32 end
33
34
35 def type_sym
36 raise X::InternalSubclassResponsibility
37 end
38
39
40 private
41
42 def __escape_string_format__(s)
43 s.gsub(/%/, '%%')
44 end
45 end
46
47 end # Umu::ConcreteSyntax::Core::Expression::Nary::Branch::Rule::Case
48
49 end # Umu::ConcreteSyntax::Core::Expression::Nary::Branch::Rule
50
51 end # Umu::ConcreteSyntax::Core::Expression::Nary::Branch
52
53 end # Umu::ConcreteSyntax::Core::Expression::Nary
54
55 end # Umu::ConcreteSyntax::Core::Expression
56
57 end # Umu::ConcreteSyntax::Core
58
59 end # Umu::ConcreteSyntax
60
61 end # Umu