petit/lexer/lexers library

Constants

operatorOrderMap → const Map<Type, int>
Trying to enforce Operator Order Precedence

Properties

absLexer → Parser<AbsParser>
identifies abss
final
aggregateLexer → Parser<AggregateParser>
identifies aggregates
final
allFalseLexer → Parser<AllFalseParser>
identifies allFalses
final
allLexer → Parser<AllParser>
identifies alls
final
allTrueLexer → Parser<AllTrueParser>
identifies allTrues
final
andStringLexer → Parser<AndStringParser>
identifies andStrings
final
answersLexer → Parser<AnswersParser>
identifies answerss
final
anyFalseLexer → Parser<AnyFalseParser>
identifies anyFalses
final
anyTrueLexer → Parser<AnyTrueParser>
identifies anyTrues
final
asFunctionLexer → Parser<AsFunctionParser>
These lexers help identify parts of an expression that are no longer supported. When the expression is applied to an object, it will throw an error, but this allows us to give more helpful and specific error messages (also, on the off chance an old system needs to actually allow these, it makes it )
final
asLexer → Parser<AsParser>
identifies as
final
avgLexer → Parser<AvgParser>
identifies avgs
final
booleanLexer → Parser<BooleanParser>
Finds strings 'true' or 'false' (without quotes)
final
bracketsIndexLexer → Parser<BracketsIndexParser>
identifies bracketsIndexs
final
ceilingLexer → Parser<CeilingParser>
identifies ceilings
final
childrenLexer → Parser<ChildrenParser>
identifies childrens
final
combineLexer → Parser<CombineParser>
identifies combines
final
commaLexer → Parser<CommaParser>
identifies commas
final
containsFunctionLexer → Parser<ContainsFunctionParser>
identifies containsFunctions
final
containsOperatorLexer → Parser<ContainsOperatorParser>
identifies contains operators
final
convertsToBooleanLexer → Parser<ConvertsToBooleanParser>
identifies convertsToBooleans
final
convertsToDateLexer → Parser<ConvertsToDateParser>
identifies convertsToDates
final
convertsToDateTimeLexer → Parser<ConvertsToDateTimeParser>
identifies convertsToDateTimes
final
convertsToDecimalLexer → Parser<ConvertsToDecimalParser>
identifies convertsToDecimals
final
convertsToIntegerLexer → Parser<ConvertsToIntegerParser>
identifies convertsToIntegers
final
convertsToQuantityLexer → Parser<ConvertsToQuantityParser>
identifies convertsToQuantitys
final
convertsToStringLexer → Parser<ConvertsToStringParser>
identifies convertsToStrings
final
convertsToTimeLexer → Parser<ConvertsToTimeParser>
identifies convertsToTimes
final
countLexer → Parser<CountParser>
identifies counts
final
dateFormatLexer → Parser<Token<String>>
final
dateLexer → Parser<DateParser>
Follows Date format specified in FHIRPath
final
dateTimeLexer → Parser<DateTimeParser>
Follows DateTime format specified in FHIRPath (I have also updated the FHIR) package to follow many of these guidelines
final
decimalLexer → Parser<DecimalParser>
final
delimitedIdentifierLexer → Parser<DelimitedIdentifierParser>
DelimitedIdentifier is signified by a backquote (`) on either end
final
deprecatedLexer → ChoiceParser
Deprecated - these Lexers will throw errors, but this allows us to provide more useful error messages
final
descendantsLexer → Parser<DescendantsParser>
identifies descendantss
final
distinctLexer → Parser<DistinctParser>
identifies distincts
final
divSignLexer → Parser<DivSignParser>
identifies divSigns
final
divStringLexer → Parser<DivStringParser>
identifies divStrings
final
dotLexer → Parser<DotParser>
identifies dots
final
durationLexer → ChoiceParser
final
emptyLexer → Parser<EmptyParser>
identifies emptys
final
emptySetLexer → Parser<EmptySetParser>
identifies emptySets
final
endsWithLexer → Parser<EndsWithParser>
identifies endsWiths
final
envVariableLexer → Parser<EnvVariableParser>
Allows environmental variables to be passed to FHIRPath
final
equalsLexer → Parser<EqualsParser>
identifies equalss
final
equivalentLexer → Parser<EquivalentParser>
identifies equivalents
final
escLexer → Parser<Token<String>>
final
excludeLexer → Parser<ExcludeParser>
identifies excludes
final
existsLexer → Parser<ExistsParser>
identifies existss
final
expLexer → Parser<ExpParser>
identifies exps
final
extensionLexer → Parser<ExtensionParser>
final
firstLexer → Parser<FirstParser>
identifies firsts
final
floorLexer → Parser<FloorParser>
identifies floors
final
functionLexer → ChoiceParser
All lexers for functions that accept arguments
final
greaterEqualLexer → Parser<GreaterEqualParser>
identifies greaterEquals
final
greaterLexer → Parser<GreaterParser>
identifies greaters
final
hasValueLexer → Parser<HasValueParser>
identifies hasValues
final
hexLexer → Parser<Token<String>>
final
identifierLexer → Parser<IdentifierParser>
An Identifier has no quotes
final
iifLexer → Parser<IifParser>
identifies iifs
final
impliesLexer → Parser<ImpliesParser>
identifies implies
final
indexLexer → Parser<IndexParser>
identifies indexs
final
indexOfLexer → Parser<IndexOfParser>
identifies indexOfs
final
inLexer → Parser<InParser>
identifies ins
final
integerLexer → Parser<IntegerParser>
final
intersectLexer → Parser<IntersectParser>
identifies intersects
final
isDistinctLexer → Parser<IsDistinctParser>
identifies isDistincts
final
isFunctionLexer → Parser<IsFunctionParser>
final
isLexer → Parser<IsParser>
identifies is
final
lastLexer → Parser<LastParser>
identifies lasts
final
lengthLexer → Parser<LengthParser>
identifies lengths
final
lessEqualLexer → Parser<LessEqualParser>
identifies lessEquals
final
lessLexer → Parser<LessParser>
identifies lesss
final
lineCommentLexer → Parser<WhiteSpaceParser>
Single Line Comment
final
literalLexer → ChoiceParser
Lexers identifying special formatting of certain types of data
final
lnLexer → Parser<LnParser>
identifies lns
final
logLexer → Parser<LogParser>
identifies logs
final
lowerLexer → Parser<LowerParser>
identifies lowers
final
matchesLexer → Parser<FpMatchesParser>
identifies matchess
final
maxLexer → Parser<MaxParser>
identifies maxs
final
minLexer → Parser<MinParser>
identifies mins
final
minusLexer → Parser<MinusParser>
final
modLexer → Parser<ModParser>
identifies divMods
final
multiLineCommentLexer → Parser<WhiteSpaceParser>
Multiline Comment
final
notEqualsLexer → Parser<NotEqualsParser>
identifies notEqualss
final
notEquivalentLexer → Parser<NotEquivalentParser>
identifies notEquivalents
final
notLexer → Parser<FpNotParser>
identifies nots
final
nowLexer → Parser<NowParser>
identifies nows
final
numberLexer → ChoiceParser
final
ofTypeLexer → Parser<OfTypeParser>
identifies ofTypes
final
ordinalLexer → Parser<OrdinalParser>
identifies ordinals
final
orStringLexer → Parser<OrStringParser>
identifies orStrings
final
plusLexer → Parser<PlusParser>
final
powerLexer → Parser<PowerParser>
identifies powers
final
quantityLexer → Parser<QuantityParser>
final
repeatLexer → Parser<RepeatParser>
identifies repeats
final
replaceLexer → Parser<ReplaceParser>
identifies replaces
final
replaceMatchesLexer → Parser<ReplaceMatchesParser>
identifies replaceMatchess
final
roundLexer → Parser<RoundParser>
identifies rounds
final
selectLexer → Parser<SelectParser>
identifies selects
final
simpleLexer → ChoiceParser
All lexers for functions that don't accept arguments
final
singleLexer → Parser<SingleParser>
identifies singles
final
skipLexer → Parser<FpSkipParser>
identifies skips
final
specialLexer → ChoiceParser
Lexers for identifying special items
final
sqrtLexer → Parser<SqrtParser>
identifies sqrts
final
starLexer → Parser<StarParser>
identifies stars
final
startsWithLexer → Parser<StartsWithParser>
identifies startsWiths
final
stringConcatenationLexer → Parser<StringConcatenationParser>
identifies string concatenation ampersand (&)
final
stringLexer → Parser<StringParser>
A String is signified by single quotes (') on either end
final
subsetOfLexer → Parser<SubsetOfParser>
identifies subsetOfs
final
substringLexer → Parser<SubstringParser>
identifies substrings
final
sumLexer → Parser<SumParser>
identifies sums
final
supersetOfLexer → Parser<SupersetOfParser>
identifies supersetOfs
final
symbolOperationLexer → ChoiceParser
Lexers for identifying key symbols
final
tailLexer → Parser<TailParser>
identifies tails
final
takeLexer → Parser<TakeParser>
identifies takes
final
thisLexer → Parser<ThisParser>
identifies thiss
final
timeFormatLexer → Parser<Token<String>>
final
timeLexer → Parser<TimeParser>
Follows Time format specified in FHIRPath
final
timeOfDayLexer → Parser<TimeOfDayParser>
identifies timeOfDays
final
timeZoneOffsetFormatLexer → Parser<Token<String>>
final
toBooleanLexer → Parser<ToBooleanParser>
final
toCharsLexer → Parser<ToCharsParser>
identifies toCharss
final
toDateLexer → Parser<ToDateParser>
identifies toDates
final
toDateTimeLexer → Parser<ToDateTimeParser>
identifies toDateTimes
final
todayLexer → Parser<TodayParser>
identifies todays
final
toDecimalLexer → Parser<ToDecimalParser>
identifies toDecimals
final
toIntegerLexer → Parser<ToIntegerParser>
identifies toIntegers
final
toQuantityLexer → Parser<ToQuantityParser>
identifies toQuantitys
final
toStringLexer → Parser<ToStringParser>
identifies toStrings
final
totalLexer → Parser<TotalParser>
identifies totals
final
toTimeLexer → Parser<ToTimeParser>
identifies toTimes
final
traceLexer → Parser<TraceParser>
identifies traces
final
truncateLexer → Parser<TruncateParser>
identifies truncates
final
unicodeLexer → Parser<Token<String>>
final
unionFunctionLexer → Parser<UnionFunctionParser>
identifies unionFunctions
final
unionOperatorLexer → Parser<UnionOperatorParser>
identifies unionOperators
final
upperLexer → Parser<UpperParser>
identifies uppers
final
whereLexer → Parser<FpWhereParser>
identifies wheres
final
whiteSpaceLexer → Parser<WhiteSpaceParser>
White Space
final
wordOperationLexer → ChoiceParser
Lexers for identifying key words
final
wsLexer → ChoiceParser
Lexer for all types of white space
final
xorLexer → Parser<XorParser>
identifies xors
final

Functions

lexer() → Parser<FhirPathParser>
Primary lexing function for this library
operatorValues(List fullList) ParserList
This ensures that any response is a ParserList (this allows easy recursion when evaluating the expression)