public static long pmapBuilderLong(long pmap, int type, int oper, long curValue, long prevValue, long initValue, boolean isNull){ //build pmap according to operator switch (oper) { case OperatorMask.Field_Copy: pmap = (pmap << 1) + (prevValue==curValue? MOST_FREQUENT_CASE:LEAST_FREQUENT_CASE); break; case OperatorMask.Field_Constant: //this intentionally left blank, does nothing if constant break; case OperatorMask.Field_Default: pmap = (pmap << 1) + (curValue==initValue? MOST_FREQUENT_CASE:LEAST_FREQUENT_CASE); break; case OperatorMask.Field_Delta: pmap = (pmap << 1) + (curValue==initValue? LEAST_FREQUENT_CASE:MOST_FREQUENT_CASE); break; case OperatorMask.Field_Increment: pmap = (pmap << 1) + ((1 + prevValue) == curValue? MOST_FREQUENT_CASE:LEAST_FREQUENT_CASE); break; } //get the type from the token, to see if it is optional or not if (TypeMask.isOptional(type)){ pmap = (pmap << 1) + (isNull? LEAST_FREQUENT_CASE:MOST_FREQUENT_CASE); } return pmap; }
public static long pmapBuilderInt(long pmap, int type, int oper, int curValue, int prevValue, int initValue, boolean isNull){ //build pmap according to operator switch (oper) { case OperatorMask.Field_Copy: pmap = (pmap << 1) + (prevValue==curValue? MOST_FREQUENT_CASE:LEAST_FREQUENT_CASE); break; case OperatorMask.Field_Constant: //this intentionally left blank, does nothing if constant break; case OperatorMask.Field_Default: pmap = (pmap << 1) + (curValue==initValue? MOST_FREQUENT_CASE:LEAST_FREQUENT_CASE); break; case OperatorMask.Field_Delta: pmap = (pmap << 1) + (curValue==initValue? LEAST_FREQUENT_CASE:MOST_FREQUENT_CASE); break; case OperatorMask.Field_Increment: pmap = (pmap << 1) + ((1 + prevValue) == curValue? MOST_FREQUENT_CASE:LEAST_FREQUENT_CASE); break; } //get the type from the token, to see if it is optional or not if (TypeMask.isOptional(type)){ pmap = (pmap << 1) + (isNull? LEAST_FREQUENT_CASE:MOST_FREQUENT_CASE); } return pmap; }
public static long pmapBuilderString(long pmap, int token, boolean isNull){ int type = TokenBuilder.extractType(token); if (TypeMask.isOptional(type)){ pmap = (pmap << 1) + (isNull? LEAST_FREQUENT_CASE:MOST_FREQUENT_CASE); } return pmap; }
if (TypeMask.isOptional(pmapType)) { isNull = "true";
int token = from.tokens[cursor]; int pmapType = TokenBuilder.extractType(token); if(TypeMask.isOptional(pmapType)) numShifts++; switch (oper) { case OperatorMask.Field_Copy: decodeCopyIntGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Constant: decodeDefaultIntGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Delta: decodeDeltaIntGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Increment: decodeIncrementIntGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_None: switch (oper) { case OperatorMask.Field_Copy: decodeCopyLongGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Constant: decocdeDefaultLongGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break;
int token = from.tokens[cursor]; int pmapType = TokenBuilder.extractType(token); if(TypeMask.isOptional(pmapType)) numShifts++; switch (oper) { case OperatorMask.Field_Copy: decodeCopyIntGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Constant: decodeDefaultIntGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Delta: decodeDeltaIntGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Increment: decodeIncrementIntGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_None: switch (oper) { case OperatorMask.Field_Copy: decodeCopyLongGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Constant: decocdeDefaultLongGenerator(target, TokenBuilder.extractId(token), TypeMask.isOptional(pmapType)); break;
if (TypeMask.isOptional(pmapType)){ numShifts++; switch (oper) { case OperatorMask.Field_Copy: copyIntGenerator(schema, bodyTarget, TokenBuilder.extractId(token), varName, TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Constant: encodeDefaultIntGenerator(schema, bodyTarget, TokenBuilder.extractId(token), varName, TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Delta: encodeDeltaIntGenerator(schema, bodyTarget, TokenBuilder.extractId(token), varName, TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Increment: incrementIntGenerator(schema, bodyTarget, TokenBuilder.extractId(token), varName, TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_None: switch (oper) { case OperatorMask.Field_Copy: copyLongGenerator(schema, bodyTarget, TokenBuilder.extractId(token), varName, TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Constant: encodeDefaultLongGenerator(schema, bodyTarget, TokenBuilder.extractId(token), varName, TypeMask.isOptional(pmapType)); break; case OperatorMask.Field_Delta: encodeDeltaLongGenerator(schema, bodyTarget, TokenBuilder.extractId(token), varName, TypeMask.isOptional(pmapType));
boolean isLong =TypeMask.isLong(type); boolean isSigned = !TypeMask.isUnsigned(type); boolean isNullable = TypeMask.isOptional(type); boolean isChars = TypeMask.isText(type) || TypeMask.isByteVector(type);