Class: Hackle::UserValueResolver

Inherits:
Object
  • Object
show all
Defined in:
lib/hackle/internal/evaluation/match/condition/user/user_condition_matcher.rb

Instance Method Summary collapse

Instance Method Details

#resolve_or_nil(user, key) ⇒ Object?

Parameters:

Returns:

  • (Object, nil)


31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/hackle/internal/evaluation/match/condition/user/user_condition_matcher.rb', line 31

def resolve_or_nil(user, key)
  case key.type
  when TargetKeyType::USER_ID
    user.identifiers[key.name]
  when TargetKeyType::USER_PROPERTY
    user.properties[key.name]
  when TargetKeyType::HACKLE_PROPERTY
    nil
  else
    raise ArgumentError, "unsupported TargetKeyType: #{key.type}"
  end
end