*
kdot=
".";
54 stringmember, remainder;
79 stringmember, remainder;
101 stringprevious_path = path;
102 while(e.
Valid()) {
103path = previous_path;
121 switch(
info.GetTypeFamily()) {
123 LOG_POST(
"ERROR: unknown family type");
147 stringmember, remainder;
151 if(!mem_it.
Valid()) {
170 stringmember, remainder;
175 if(index < choice_type->GetVariants().FirstIndex()) {
209 while(elem.
Valid()) {
254 switch(
info.GetTypeFamily()) {
256 LOG_POST(
"ERROR: unknown family type");
282 stringpath = field_name;
287 if(found &&
results->empty()) {
303 stringpath = field_name;
308 if(found &&
results->empty()) {
325CEnumeratedTypeValues::TValues::const_iterator it =
all.begin();
338 while(mem.
Valid()) {
380 while(elem.
Valid()) {
383 if(oi == obj.
field) {
420 _TRACE(
"<<<< oi: "<< &oi);
433 stringnew_val =
value.GetString();
476 _TRACE(
">>>> isOK: "<< isOK);
481 const string& field_name,
487 if( field_name.empty() ) {
492CMQueryNodeValue::TObs::iterator it = obs_list.begin();
493 for( ; it != obs_list.end(); ++it ) {
504 _TRACE(
">>>> "<< isOK);
510 _TRACE(
"<<<< oi: "<< &oi);
512 if(field_name.empty()) {
522 _TRACE(
">>>> result: "<< isOK);
528 _TRACE(
"<<<< oi: "<< &oi);
560 value.SetString(sValue);
568 _TRACE(
">>>> result: "<< isOK);
580 while(ei.
Valid()) {
641}
else if(resolved){
Subclass of the IQueryParseUserObject which is held as the user-defined object in each CQueryParseNod...
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define LOG_POST(message)
This macro is deprecated and it's strongly recomended to move in all projects (except tests) to macro...
list< pair< string, TEnumValueType > > TValues
bool Optional(void) const
const CMemberId & GetId(void) const
const string & GetName(void) const
const TValues & GetValues(void) const
Get the list of name-value pairs.
static void s_Start_SetFields(string &path, CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
static void s_ResolveFieldsOfPointer(string &path, const CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
static void s_Start_GetFields(string &path, const CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
bool RemoveFieldByName(CMQueryNodeValue::SResolvedField &res_field)
Remove the object information instance corresponding to field, using information about its parent nod...
list< SResolvedField > TObs
bool ResolveAndSetSimpleTypeValue(CObjectInfo &oi, const string &field_name, const CMQueryNodeValue &value, edit::EExistingText existing_text)
bool GetSimpleTypeValue(CObjectInfo &oi, const string &field_name, CMQueryNodeValue &value)
Get single node data from the node specified by parameter of type CObjectInfo and additionally field ...
static void s_SetFieldsOfContainer(string &path, CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
bool ResolveIdentToObjects(const CObjectInfo &oi, const string &identifier, CMQueryNodeValue &v)
Resolve name to the list of objects.
static void s_SetFieldsOfClass(string &path, CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
bool SetSimpleTypeValue(CObjectInfo &oi, const CMQueryNodeValue &value, edit::EExistingText existing_text)
EType GetDataType() const
static void s_ResolveFieldsOfChoice(string &path, const CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
bool GetFieldsByName(CMQueryNodeValue::TObs *results, const CObjectInfo &oi_i, const string &field_name)
Resolve existing dot qualified ASN.1 name (field_name) starting from the object information instance ...
bool ResolveIdentToSimple(const CObjectInfo &oi, const string &identifier, CMQueryNodeValue &v)
Resolve name to simple types value.
bool SetFieldsByName(CMQueryNodeValue::TObs *results, CObjectInfo &oi_i, const string &field_name)
Resolve not necessarily existing dot qualified ASN.1 name (field_name) starting from the object infor...
static void s_SetFieldsOfChoice(string &path, CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
static void s_ResolveFieldsOfContainer(string &path, const CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
static bool s_ResetChoiceVariant(CMQueryNodeValue::SResolvedField &obj)
static bool s_RemovePrimitiveValue(CObjectInfo &obj)
static void s_ResolveFieldsOfClass(string &path, const CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
static void s_SetFieldsOfPointer(string &path, CObjectInfo &info, CMQueryNodeValue::TObs *results, bool &found)
void SetObjects(const TObs &obs)
static bool s_RemoveContainerElement(CMQueryNodeValue::SResolvedField &obj)
static bool s_RemoveClassMember(CMQueryNodeValue::SResolvedField &obj)
bool GetPrimitiveValue(const CObjectInfo &oi, CMQueryNodeValue &value)
Get a primitive value from oi.
static bool s_ResolveIdentOICommon(const CObjectInfo &oi, const string &identifier, CMQueryNodeValue::TObs &nodes)
size_t TMemberIndex
Type used for indexing class members and choice variants.
EPrimitiveValueType
Primitive value type.
static const TObjectType * SafeCast(TTypeInfo type)
@ ePrimitiveValueString
string|char*|const char*
@ ePrimitiveValueInteger
(signed|unsigned) (char|short|int|long)
@ ePrimitiveValueChar
char
@ ePrimitiveValueBool
bool
@ ePrimitiveValueEnum
enum
@ ePrimitiveValueReal
float|double
void SetPrimitiveValueChar(char value)
bool Valid(void) const
Is iterator valid.
CElementIterator BeginElements(void) const
Create container elements iterator.
void Reset(void)
Reset value of member to default state.
TMemberIndex GetMemberIndex(void) const
Get index of the member in the class.
CObjectInfo GetPointedObject(void) const
Get data and type information of object to which this type refers.
bool GetPrimitiveValueBool(void) const
Get boolean data.
CObjectInfo GetElement(void) const
Get element data and type information.
const CMemberInfo * GetMemberInfo(void) const
CMemberIterator BeginMembers(void) const
Create class member iterator.
CObjectInfo GetMember(void) const
Get class member data.
void SetPrimitiveValueString(const string &value)
void SetPrimitiveValueBool(bool value)
Set boolean data.
const CEnumeratedTypeValues & GetEnumeratedTypeValues(void) const
Get a set of possible values of enumeration.
CChoiceVariant GetCurrentChoiceVariant(void) const
Get data and type information of selected choice variant.
void SetPrimitiveValueInt8(Int8 value)
void SetPrimitiveValueInt4(Int4 value)
CObjectInfo GetVariant(void) const
Get variant data.
bool Valid(void) const
Is iterator valid.
ETypeFamily GetTypeFamily(void) const
Get data type family.
void GetPrimitiveValueString(string &value) const
Get string data.
double GetPrimitiveValueDouble(void) const
Get data as double.
Int4 GetPrimitiveValueInt4(void) const
Get data as Int4.
void SetPrimitiveValueDouble(double value)
TMemberIndex GetIndex(void) const
Get index of the element in the container.
const string & GetName(void) const
Get type name.
void SetPrimitiveValueInt(int value)
const CVariantInfo * GetVariantInfo(void) const
EPrimitiveValueType GetPrimitiveValueType(void) const
Get type of primitive value.
Int8 GetPrimitiveValueInt8(void) const
Get data as Int8.
bool IsSet(void) const
Is member assigned a value.
int32_t Int4
4-byte (32-bit) signed integer
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define USING_SCOPE(ns)
Use the specified namespace.
#define END_SCOPE(ns)
End the previously defined scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
#define BEGIN_SCOPE(ns)
Define a new scope.
static bool IsBlank(const CTempString str, SIZE_TYPE pos=0)
Check if a string is blank (has no text).
static long StringToLong(const CTempString str, TStringToNumFlags flags=0, int base=10)
Convert string to long.
static bool StartsWith(const CTempString str, const CTempString start, ECase use_case=eCase)
Check if a string starts with a specified prefix value.
static bool SplitInTwo(const CTempString str, const CTempString delim, string &str1, string &str2, TSplitFlags flags=0)
Split a string into two pieces using the specified delimiters.
static bool EqualNocase(const CTempString s1, SIZE_TYPE pos, SIZE_TYPE n, const char *s2)
Case-insensitive equality of a substring with another string.
static enable_if< is_arithmetic< TNumeric >::value||is_convertible< TNumeric, Int8 >::value, string >::type NumericToString(TNumeric value, TNumToStringFlags flags=0, int base=10)
Convert numeric value to string.
where boath are integers</td > n< td ></td > n</tr > n< tr > n< td > tse</td > n< td > optional</td > n< td > String</td > n< td class=\"description\"> TSE option controls what blob is smart and slim</td> n<td> orig</td> n</tr> n<tr> n<td> last_modified</td> n<td> optional</td> n<td> Integer</td> n<td class=\"description\"> The blob last modification If provided then the exact match will be requested with n the Cassandra storage corresponding field value</td> n<td> Positive integer Not provided means that the most recent match will be selected</td> n<td></td> n</tr> n<tr> n<td> use_cache</td> n<td> optional</td> n<td> String</td> n<td class=\"description\"> The option controls if the Cassandra LMDB cache and or database should be used It n affects the seq id resolution step and the blob properties lookup step The following n options are BIOSEQ_INFO and BLOB_PROP at all
Functions that resolve field names described in asn format.
const GenericPointer< typename T::ValueType > T2 value
Miscellaneous common-use basic types and functionality.
bool AddValueToString(string &str, const string &value, EExistingText existing_text)
Add text to an existing string, using the "existing_text" directive to combine new text with existing...
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4