Define respond_to?
on RecordRef
to match method_missing
behavior
#608
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
RecordRef
s often include a name, which allows access viamethod_missing
by callingrecord_ref.name
, however if no referenced record is assigned, you'll still get aRecordRef
instance, it just wont have any fields, sorecord_ref.name
raised aNoMethodError
, but if you checked for the field first viarecord_ref.respond_to?(:name)
, it'd be falsey regardless of whether the field existed or not.Defining
respond_to?
in good practice alongsidemethod_missing
. Ideally,respond_to_missing?
would be used instead, as that enables access to the method likerecord_ref.method(:name)
, however I kept withrespond_to?
to matchCustomFieldList
.CustomRecordRef
also usesmethod_missing
, however there's no specs and I'm not familiar with that record, so I left it alone.