Class: AdLint::Cc1::UndefinedValueDomain

Inherits:
ValueDomain show all
Extended by:
Forwardable
Defined in:
lib/adlint/cc1/domain.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from ValueDomain

#!, #!=, #%, #-, #<, #<=, #<=>, #==, #>, #>=, #_contain_equal_to?, #_contain_greater_than?, #_contain_intersection?, #_contain_less_than?, #_contain_nil?, #_contain_union?, #_contain_unlimited?, #_equal_equal_to, #_equal_greater_than, #_equal_less_than, #_equal_nil, #_equal_unlimited, #_intersect_equal_to?, #_intersect_greater_than?, #_intersect_less_than?, #_intersect_nil?, #_intersect_unlimited?, #_less_equal_to, #_less_greater_than, #_less_less_than, #_less_nil, #_less_unlimited, #_logical_and_equal_to, #_logical_and_greater_than, #_logical_and_less_than, #_logical_and_nil, #_logical_and_unlimited, #_logical_or_equal_to, #_logical_or_greater_than, #_logical_or_less_than, #_logical_or_nil, #_logical_or_unlimited, #_narrow_by_ge, #_narrow_by_le, #_narrow_equal_to_by_eq, #_narrow_equal_to_by_gt, #_narrow_equal_to_by_lt, #_narrow_equal_to_by_ne, #_narrow_greater_than_by_eq, #_narrow_greater_than_by_gt, #_narrow_greater_than_by_lt, #_narrow_greater_than_by_ne, #_narrow_less_than_by_eq, #_narrow_less_than_by_gt, #_narrow_less_than_by_lt, #_narrow_less_than_by_ne, #_narrow_nil_by_eq, #_narrow_nil_by_gt, #_narrow_nil_by_lt, #_narrow_nil_by_ne, #_narrow_unlimited_by_eq, #_narrow_unlimited_by_gt, #_narrow_unlimited_by_lt, #_narrow_unlimited_by_ne, #_not_equal_equal_to, #_not_equal_greater_than, #_not_equal_less_than, #_not_equal_nil, #_not_equal_unlimited, #_widen_by_eq, #_widen_by_ge, #_widen_by_gt, #_widen_by_le, #_widen_by_lt, #_widen_by_ne, #complexity, #contain?, #contain_value_domain?, #each_sample, #empty?, #eql?, #hash, #intersect?, #logical_and, #logical_or, #logical_shr?, #max_value, #min_value, #narrow, #widen

Methods included from ValueDomainFactory

#_create_intersection, #_create_union, #clear_memos, #equal_to, #greater_than, #greater_than_or_equal_to, #less_than, #less_than_or_equal_to, #not_equal_to, #of_ambiguous, #of_false, #of_intersection, #of_nan, #of_nil, #of_true, #of_undefined, #of_union, #of_unlimited

Constructor Details

#initialize(dom) ⇒ UndefinedValueDomain

Returns a new instance of UndefinedValueDomain.



6961
6962
6963
6964
# File 'lib/adlint/cc1/domain.rb', line 6961

def initialize(dom)
  super(dom.logical_shr?)
  @domain = dom
end

Instance Attribute Details

#domainObject (readonly)

Returns the value of attribute domain.



6966
6967
6968
# File 'lib/adlint/cc1/domain.rb', line 6966

def domain
  @domain
end

Instance Method Details

#&(rhs_dom) ⇒ Object



7153
7154
7155
# File 'lib/adlint/cc1/domain.rb', line 7153

def &(rhs_dom)
  ValueDomain.of_undefined(@domain & rhs_dom)
end

#*(rhs_dom) ⇒ Object



7095
7096
7097
# File 'lib/adlint/cc1/domain.rb', line 7095

def *(rhs_dom)
  ValueDomain.of_undefined(@domain * rhs_dom)
end

#+(rhs_dom) ⇒ Object



7061
7062
7063
# File 'lib/adlint/cc1/domain.rb', line 7061

def +(rhs_dom)
  ValueDomain.of_undefined(@domain + rhs_dom)
end

#+@Object



7053
7054
7055
# File 'lib/adlint/cc1/domain.rb', line 7053

def +@
  ValueDomain.of_undefined(+@domain)
end

#-@Object



7057
7058
7059
# File 'lib/adlint/cc1/domain.rb', line 7057

def -@
  ValueDomain.of_undefined(-@domain)
end

#/(rhs_dom) ⇒ Object



7129
7130
7131
# File 'lib/adlint/cc1/domain.rb', line 7129

def /(rhs_dom)
  ValueDomain.of_undefined(@domain / rhs_dom)
end

#<<(rhs_dom) ⇒ Object



7255
7256
7257
# File 'lib/adlint/cc1/domain.rb', line 7255

def <<(rhs_dom)
  ValueDomain.of_undefined(@domain << rhs_dom)
end

#>>(rhs_dom) ⇒ Object



7279
7280
7281
# File 'lib/adlint/cc1/domain.rb', line 7279

def >>(rhs_dom)
  ValueDomain.of_undefined(@domain >> rhs_dom)
end

#^(rhs_dom) ⇒ Object



7221
7222
7223
# File 'lib/adlint/cc1/domain.rb', line 7221

def ^(rhs_dom)
  ValueDomain.of_undefined(@domain ^ rhs_dom)
end

#_add_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7077
7078
7079
7080
7081
# File 'lib/adlint/cc1/domain.rb', line 7077

def _add_equal_to(lhs_dom, rhs_dom = self)
  # NOTE: `LHS + RHS' equals to `RHS + LHS'.
  #       This method invokes UndefinedValueDomain#+.
  rhs_dom + lhs_dom
end

#_add_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7089
7090
7091
7092
7093
# File 'lib/adlint/cc1/domain.rb', line 7089

def _add_greater_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS + RHS' equals to `RHS + LHS'.
  #       This method invokes UndefinedValueDomain#+.
  rhs_dom + lhs_dom
end

#_add_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7083
7084
7085
7086
7087
# File 'lib/adlint/cc1/domain.rb', line 7083

def _add_less_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS + RHS' equals to `RHS + LHS'.
  #       This method invokes UndefinedValueDomain#+.
  rhs_dom + lhs_dom
end

#_add_nil(lhs_dom, rhs_dom = self) ⇒ Object



7065
7066
7067
7068
7069
# File 'lib/adlint/cc1/domain.rb', line 7065

def _add_nil(lhs_dom, rhs_dom = self)
  # NOTE: `LHS + RHS' equals to `RHS + LHS'.
  #       This method invokes UndefinedValueDomain#+.
  rhs_dom + lhs_dom
end

#_add_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7071
7072
7073
7074
7075
# File 'lib/adlint/cc1/domain.rb', line 7071

def _add_unlimited(lhs_dom, rhs_dom = self)
  # NOTE: `LHS + RHS' equals to `RHS + LHS'.
  #       This method invokes UndefinedValueDomain#+.
  rhs_dom + lhs_dom
end

#_and_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7169
7170
7171
7172
7173
# File 'lib/adlint/cc1/domain.rb', line 7169

def _and_equal_to(lhs_dom, rhs_dom = self)
  # NOTE: `LHS & RHS' equals to `RHS & LHS'.
  #       This method invokes UndefinedValueDomain#&.
  rhs_dom & lhs_dom
end

#_and_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7181
7182
7183
7184
7185
# File 'lib/adlint/cc1/domain.rb', line 7181

def _and_greater_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS & RHS' equals to `RHS & LHS'.
  #       This method invokes UndefinedValueDomain#&.
  rhs_dom & lhs_dom
end

#_and_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7175
7176
7177
7178
7179
# File 'lib/adlint/cc1/domain.rb', line 7175

def _and_less_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS & RHS' equals to `RHS & LHS'.
  #       This method invokes UndefinedValueDomain#&.
  rhs_dom & lhs_dom
end

#_and_nil(lhs_dom, rhs_dom = self) ⇒ Object



7157
7158
7159
7160
7161
# File 'lib/adlint/cc1/domain.rb', line 7157

def _and_nil(lhs_dom, rhs_dom = self)
  # NOTE: `LHS & RHS' equals to `RHS & LHS'.
  #       This method invokes UndefinedValueDomain#&.
  rhs_dom & lhs_dom
end

#_and_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7163
7164
7165
7166
7167
# File 'lib/adlint/cc1/domain.rb', line 7163

def _and_unlimited(lhs_dom, rhs_dom = self)
  # NOTE: `LHS & RHS' equals to `RHS & LHS'.
  #       This method invokes UndefinedValueDomain#&.
  rhs_dom & lhs_dom
end

#_div_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7141
7142
7143
# File 'lib/adlint/cc1/domain.rb', line 7141

def _div_equal_to(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._div_equal_to(lhs_dom))
end

#_div_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7149
7150
7151
# File 'lib/adlint/cc1/domain.rb', line 7149

def _div_greater_than(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._div_greater_than(lhs_dom))
end

#_div_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7145
7146
7147
# File 'lib/adlint/cc1/domain.rb', line 7145

def _div_less_than(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._div_less_than(lhs_dom))
end

#_div_nil(lhs_dom, rhs_dom = self) ⇒ Object



7133
7134
7135
# File 'lib/adlint/cc1/domain.rb', line 7133

def _div_nil(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._div_nil(lhs_dom))
end

#_div_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7137
7138
7139
# File 'lib/adlint/cc1/domain.rb', line 7137

def _div_unlimited(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._div_unlimited(lhs_dom))
end

#_intersection_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7351
7352
7353
7354
7355
# File 'lib/adlint/cc1/domain.rb', line 7351

def _intersection_equal_to(lhs_dom, rhs_dom = self)
  # NOTE: `LHS intersection RHS' equals to `RHS intersection LHS'.
  #       This method invokes UndefinedValueDomain#intersection.
  rhs_dom.intersection(lhs_dom)
end

#_intersection_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7363
7364
7365
7366
7367
# File 'lib/adlint/cc1/domain.rb', line 7363

def _intersection_greater_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS intersection RHS' equals to `RHS intersection LHS'.
  #       This method invokes UndefinedValueDomain#intersection.
  rhs_dom.intersection(lhs_dom)
end

#_intersection_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7357
7358
7359
7360
7361
# File 'lib/adlint/cc1/domain.rb', line 7357

def _intersection_less_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS intersection RHS' equals to `RHS intersection LHS'.
  #       This method invokes UndefinedValueDomain#intersection.
  rhs_dom.intersection(lhs_dom)
end

#_intersection_nil(lhs_dom, rhs_dom = self) ⇒ Object



7339
7340
7341
7342
7343
# File 'lib/adlint/cc1/domain.rb', line 7339

def _intersection_nil(lhs_dom, rhs_dom = self)
  # NOTE: `LHS intersection RHS' equals to `RHS intersection LHS'.
  #       This method invokes UndefinedValueDomain#intersection.
  rhs_dom.intersection(lhs_dom)
end

#_intersection_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7345
7346
7347
7348
7349
# File 'lib/adlint/cc1/domain.rb', line 7345

def _intersection_unlimited(lhs_dom, rhs_dom = self)
  # NOTE: `LHS intersection RHS' equals to `RHS intersection LHS'.
  #       This method invokes UndefinedValueDomain#intersection.
  rhs_dom.intersection(lhs_dom)
end

#_mul_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7111
7112
7113
7114
7115
# File 'lib/adlint/cc1/domain.rb', line 7111

def _mul_equal_to(lhs_dom, rhs_dom = self)
  # NOTE: `LHS * RHS' equals to `RHS * LHS'.
  #       This method invokes UndefinedValueDomain#*.
  rhs_dom * lhs_dom
end

#_mul_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7123
7124
7125
7126
7127
# File 'lib/adlint/cc1/domain.rb', line 7123

def _mul_greater_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS * RHS' equals to `RHS * LHS'.
  #       This method invokes UndefinedValueDomain#*.
  rhs_dom * lhs_dom
end

#_mul_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7117
7118
7119
7120
7121
# File 'lib/adlint/cc1/domain.rb', line 7117

def _mul_less_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS * RHS' equals to `RHS * LHS'.
  #       This method invokes UndefinedValueDomain#*.
  rhs_dom * lhs_dom
end

#_mul_nil(lhs_dom, rhs_dom = self) ⇒ Object



7099
7100
7101
7102
7103
# File 'lib/adlint/cc1/domain.rb', line 7099

def _mul_nil(lhs_dom, rhs_dom = self)
  # NOTE: `LHS * RHS' equals to `RHS * LHS'.
  #       This method invokes UndefinedValueDomain#*.
  rhs_dom * lhs_dom
end

#_mul_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7105
7106
7107
7108
7109
# File 'lib/adlint/cc1/domain.rb', line 7105

def _mul_unlimited(lhs_dom, rhs_dom = self)
  # NOTE: `LHS * RHS' equals to `RHS * LHS'.
  #       This method invokes UndefinedValueDomain#*.
  rhs_dom * lhs_dom
end

#_narrow_by_eq(rhs_dom, lhs_dom = self) ⇒ Object



6998
6999
7000
# File 'lib/adlint/cc1/domain.rb', line 6998

def _narrow_by_eq(rhs_dom, lhs_dom = self)
  ValueDomain.of_undefined(lhs_dom.domain._narrow_by_eq(rhs_dom))
end

#_narrow_by_gt(rhs_dom, lhs_dom = self) ⇒ Object



7028
7029
7030
# File 'lib/adlint/cc1/domain.rb', line 7028

def _narrow_by_gt(rhs_dom, lhs_dom = self)
  ValueDomain.of_undefined(lhs_dom.domain._narrow_by_gt(rhs_dom))
end

#_narrow_by_lt(rhs_dom, lhs_dom = self) ⇒ Object



7018
7019
7020
# File 'lib/adlint/cc1/domain.rb', line 7018

def _narrow_by_lt(rhs_dom, lhs_dom = self)
  ValueDomain.of_undefined(lhs_dom.domain._narrow_by_lt(rhs_dom))
end

#_narrow_by_ne(rhs_dom, lhs_dom = self) ⇒ Object



7008
7009
7010
# File 'lib/adlint/cc1/domain.rb', line 7008

def _narrow_by_ne(rhs_dom, lhs_dom = self)
  ValueDomain.of_undefined(lhs_dom.domain._narrow_by_ne(rhs_dom))
end

#_or_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7203
7204
7205
7206
7207
# File 'lib/adlint/cc1/domain.rb', line 7203

def _or_equal_to(lhs_dom, rhs_dom = self)
  # NOTE: `LHS | RHS' equals to `RHS | LHS'.
  #       This method invokes UndefinedValueDomain#|.
  rhs_dom | lhs_dom
end

#_or_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7215
7216
7217
7218
7219
# File 'lib/adlint/cc1/domain.rb', line 7215

def _or_greater_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS | RHS' equals to `RHS | LHS'.
  #       This method invokes UndefinedValueDomain#|.
  rhs_dom | lhs_dom
end

#_or_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7209
7210
7211
7212
7213
# File 'lib/adlint/cc1/domain.rb', line 7209

def _or_less_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS | RHS' equals to `RHS | LHS'.
  #       This method invokes UndefinedValueDomain#|.
  rhs_dom | lhs_dom
end

#_or_nil(lhs_dom, rhs_dom = self) ⇒ Object



7191
7192
7193
7194
7195
# File 'lib/adlint/cc1/domain.rb', line 7191

def _or_nil(lhs_dom, rhs_dom = self)
  # NOTE: `LHS | RHS' equals to `RHS | LHS'.
  #       This method invokes UndefinedValueDomain#|.
  rhs_dom | lhs_dom
end

#_or_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7197
7198
7199
7200
7201
# File 'lib/adlint/cc1/domain.rb', line 7197

def _or_unlimited(lhs_dom, rhs_dom = self)
  # NOTE: `LHS | RHS' equals to `RHS | LHS'.
  #       This method invokes UndefinedValueDomain#|.
  rhs_dom | lhs_dom
end

#_shl_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7267
7268
7269
# File 'lib/adlint/cc1/domain.rb', line 7267

def _shl_equal_to(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shl_equal_to(lhs_dom))
end

#_shl_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7275
7276
7277
# File 'lib/adlint/cc1/domain.rb', line 7275

def _shl_greater_than(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shl_greater_than(lhs_dom))
end

#_shl_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7271
7272
7273
# File 'lib/adlint/cc1/domain.rb', line 7271

def _shl_less_than(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shl_less_than(lhs_dom))
end

#_shl_nil(lhs_dom, rhs_dom = self) ⇒ Object



7259
7260
7261
# File 'lib/adlint/cc1/domain.rb', line 7259

def _shl_nil(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shl_nil(lhs_dom))
end

#_shl_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7263
7264
7265
# File 'lib/adlint/cc1/domain.rb', line 7263

def _shl_unlimited(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shl_unlimited(lhs_dom))
end

#_shr_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7291
7292
7293
# File 'lib/adlint/cc1/domain.rb', line 7291

def _shr_equal_to(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shr_equal_to(lhs_dom))
end

#_shr_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7299
7300
7301
# File 'lib/adlint/cc1/domain.rb', line 7299

def _shr_greater_than(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shr_greater_than(lhs_dom))
end

#_shr_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7295
7296
7297
# File 'lib/adlint/cc1/domain.rb', line 7295

def _shr_less_than(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shr_less_than(lhs_dom))
end

#_shr_nil(lhs_dom, rhs_dom = self) ⇒ Object



7283
7284
7285
# File 'lib/adlint/cc1/domain.rb', line 7283

def _shr_nil(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shr_nil(lhs_dom))
end

#_shr_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7287
7288
7289
# File 'lib/adlint/cc1/domain.rb', line 7287

def _shr_unlimited(lhs_dom, rhs_dom = self)
  ValueDomain.of_undefined(rhs_dom.domain._shr_unlimited(lhs_dom))
end

#_union_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7385
7386
7387
7388
7389
# File 'lib/adlint/cc1/domain.rb', line 7385

def _union_equal_to(lhs_dom, rhs_dom = self)
  # NOTE: `LHS union RHS' equals to `RHS union LHS'.
  #       This method invokes UndefinedValueDomain#union.
  rhs_dom.union(lhs_dom)
end

#_union_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7397
7398
7399
7400
7401
# File 'lib/adlint/cc1/domain.rb', line 7397

def _union_greater_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS union RHS' equals to `RHS union LHS'.
  #       This method invokes UndefinedValueDomain#union.
  rhs_dom.union(lhs_dom)
end

#_union_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7391
7392
7393
7394
7395
# File 'lib/adlint/cc1/domain.rb', line 7391

def _union_less_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS union RHS' equals to `RHS union LHS'.
  #       This method invokes UndefinedValueDomain#union.
  rhs_dom.union(lhs_dom)
end

#_union_nil(lhs_dom, rhs_dom = self) ⇒ Object



7373
7374
7375
7376
7377
# File 'lib/adlint/cc1/domain.rb', line 7373

def _union_nil(lhs_dom, rhs_dom = self)
  # NOTE: `LHS union RHS' equals to `RHS union LHS'.
  #       This method invokes UndefinedValueDomain#union.
  rhs_dom.union(lhs_dom)
end

#_union_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7379
7380
7381
7382
7383
# File 'lib/adlint/cc1/domain.rb', line 7379

def _union_unlimited(lhs_dom, rhs_dom = self)
  # NOTE: `LHS union RHS' equals to `RHS union LHS'.
  #       This method invokes UndefinedValueDomain#union.
  rhs_dom.union(lhs_dom)
end

#_xor_equal_to(lhs_dom, rhs_dom = self) ⇒ Object



7237
7238
7239
7240
7241
# File 'lib/adlint/cc1/domain.rb', line 7237

def _xor_equal_to(lhs_dom, rhs_dom = self)
  # NOTE: `LHS ^ RHS' equals to `RHS ^ LHS'.
  #       This method invokes UndefinedValueDomain#^.
  rhs_dom ^ lhs_dom
end

#_xor_greater_than(lhs_dom, rhs_dom = self) ⇒ Object



7249
7250
7251
7252
7253
# File 'lib/adlint/cc1/domain.rb', line 7249

def _xor_greater_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS ^ RHS' equals to `RHS ^ LHS'.
  #       This method invokes UndefinedValueDomain#^.
  rhs_dom ^ lhs_dom
end

#_xor_less_than(lhs_dom, rhs_dom = self) ⇒ Object



7243
7244
7245
7246
7247
# File 'lib/adlint/cc1/domain.rb', line 7243

def _xor_less_than(lhs_dom, rhs_dom = self)
  # NOTE: `LHS ^ RHS' equals to `RHS ^ LHS'.
  #       This method invokes UndefinedValueDomain#^.
  rhs_dom ^ lhs_dom
end

#_xor_nil(lhs_dom, rhs_dom = self) ⇒ Object



7225
7226
7227
7228
7229
# File 'lib/adlint/cc1/domain.rb', line 7225

def _xor_nil(lhs_dom, rhs_dom = self)
  # NOTE: `LHS ^ RHS' equals to `RHS ^ LHS'.
  #       This method invokes UndefinedValueDomain#^.
  rhs_dom ^ lhs_dom
end

#_xor_unlimited(lhs_dom, rhs_dom = self) ⇒ Object



7231
7232
7233
7234
7235
# File 'lib/adlint/cc1/domain.rb', line 7231

def _xor_unlimited(lhs_dom, rhs_dom = self)
  # NOTE: `LHS ^ RHS' equals to `RHS ^ LHS'.
  #       This method invokes UndefinedValueDomain#^.
  rhs_dom ^ lhs_dom
end

#ambiguous?Boolean

Returns:

  • (Boolean)


6978
6979
6980
# File 'lib/adlint/cc1/domain.rb', line 6978

def ambiguous?
  false
end

#coerce_to_integerObject



7403
7404
7405
# File 'lib/adlint/cc1/domain.rb', line 7403

def coerce_to_integer
  ValueDomain.of_undefined(@domain.coerce_to_integer)
end

#coerce_to_realObject



7407
7408
7409
# File 'lib/adlint/cc1/domain.rb', line 7407

def coerce_to_real
  ValueDomain.of_undefined(@domain.coerce_to_real)
end

#intersection(rhs_dom) ⇒ Object



7335
7336
7337
# File 'lib/adlint/cc1/domain.rb', line 7335

def intersection(rhs_dom)
  ValueDomain.of_undefined(@domain.intersection(rhs_dom))
end

#inversionObject



7045
7046
7047
# File 'lib/adlint/cc1/domain.rb', line 7045

def inversion
  ValueDomain.of_undefined(@domain.inversion)
end

#nan?Boolean

Returns:

  • (Boolean)


6970
6971
6972
# File 'lib/adlint/cc1/domain.rb', line 6970

def nan?
  false
end

#to_defined_domainObject



7415
7416
7417
# File 'lib/adlint/cc1/domain.rb', line 7415

def to_defined_domain
  @domain
end

#to_sObject



7419
7420
7421
# File 'lib/adlint/cc1/domain.rb', line 7419

def to_s
  "(== Undefined[#{@domain.to_s}])"
end

#undefined?Boolean

Returns:

  • (Boolean)


6974
6975
6976
# File 'lib/adlint/cc1/domain.rb', line 6974

def undefined?
  true
end

#union(rhs_dom) ⇒ Object



7369
7370
7371
# File 'lib/adlint/cc1/domain.rb', line 7369

def union(rhs_dom)
  ValueDomain.of_undefined(@domain.union(rhs_dom))
end

#|(rhs_dom) ⇒ Object



7187
7188
7189
# File 'lib/adlint/cc1/domain.rb', line 7187

def |(rhs_dom)
  ValueDomain.of_undefined(@domain | rhs_dom)
end

#~Object



7049
7050
7051
# File 'lib/adlint/cc1/domain.rb', line 7049

def ~
  ValueDomain.of_undefined(~@domain)
end