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.
A rather involved change to the NT wrapper interface in order to make NTEnum useful (#25).
Mainly a replacement/extension of the client side wrapper functions with a stateful wrap/unwrap object. This allows
p4p.nt.enum.NTEnum
to cache a choices list, allowing for index lookup inwrap()
andunwrap()
where it might not otherwise be available.This is really a workaround for the race conditions inherent in the way PVA protocol and the NTEnum are defined.
The
p4p.nt.enum.ntenum
wrapper acts like an integer, with an additional memberchoice
containing the string (if known).There are still some TODOs here. I wonder if the wrapper object should be compatible with
str
?@tynanford Would this work for you? Improvements?
Server side usage would be:
Client side usage against QSRV w/ an mbboRecord
would be
Documentation of this new NT interface is tbd.