mirror of
https://github.com/sharkdp/bat.git
synced 2025-04-13 14:20:36 +01:00
Add GraphQl syntax test sample
This commit is contained in:
parent
acc370d345
commit
f10c8ce25e
145
tests/syntax-tests/highlighted/GraphQL/test.graphql
Normal file
145
tests/syntax-tests/highlighted/GraphQL/test.graphql
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m Token::[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m Punctuator[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m Name[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m IntValue[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m FloatValue[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m StringValue[0m
|
||||||
|
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m Punctuator:: one of[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m ! $ ( ) ... : = @ [ ] { | }[0m
|
||||||
|
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m Name::[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m /[_A-Za-z][_0-9A-Za-z]*/[0m
|
||||||
|
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m Document :[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m Definition (list)[0m
|
||||||
|
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m Definition :[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m ExecutableDefinition[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m TypeSystemDefinition[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m TypeSystemExtension[0m
|
||||||
|
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m ExecutableDefinition :[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m FragmentDefinition[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m OperationDefintion[0m
|
||||||
|
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m FragmentDefinition[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mtype[0m[38;2;248;248;242m [0m[38;2;166;226;46msomeType[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mid[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mID[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mfragment[0m[38;2;248;248;242m [0m[38;2;166;226;46msubsriberFields[0m[38;2;248;248;242m [0m[38;2;249;38;114mon[0m[38;2;248;248;242m [0m[38;2;248;248;242msomeType[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mid[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mname[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooInt[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mint[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m1234[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[3;38;2;253;151;31mnegInt[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m-56789[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[3;38;2;253;151;31mzero[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m0[0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooFloat[0m[38;2;248;248;242m([0m
|
||||||
|
[38;2;248;248;242m [0m[3;38;2;253;151;31mfloat[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m1.1[0m
|
||||||
|
[38;2;248;248;242m [0m[3;38;2;253;151;31mfloatExp[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m1.4e10[0m
|
||||||
|
[38;2;248;248;242m [0m[3;38;2;253;151;31mfloatExpSign1[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m1.4e+10[0m
|
||||||
|
[38;2;248;248;242m [0m[3;38;2;253;151;31mfloatExpSign2[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m1.5e-40[0m
|
||||||
|
[38;2;248;248;242m [0m[3;38;2;253;151;31mfloatExpBigE[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m1.5E10[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooBool[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mx[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255mtrue[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[3;38;2;253;151;31my[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255mfalse[0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooString[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mstr[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mhello[0m[38;2;230;219;116m"[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[3;38;2;253;151;31mstrUni[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;190;132;255m\u2116[0m[38;2;230;219;116m"[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[3;38;2;253;151;31mstrEscWs[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;190;132;255m\t[0m[38;2;230;219;116m"[0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooLongStr[0m[38;2;248;248;242m([0m
|
||||||
|
[38;2;248;248;242m [0m[3;38;2;253;151;31mlStr[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"""[0m
|
||||||
|
[38;2;230;219;116m Hello Reader,[0m
|
||||||
|
[38;2;230;219;116m This is a long string block.[0m
|
||||||
|
[38;2;230;219;116m Best,[0m
|
||||||
|
[38;2;230;219;116m Writer[0m
|
||||||
|
[38;2;230;219;116m [0m[38;2;230;219;116m"""[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooNull[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mnullThing[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255mnull[0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooList[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mnumList[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;190;132;255m1[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;190;132;255m2[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;190;132;255m3[0m[38;2;248;248;242m][0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[3;38;2;253;151;31mstrList[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m[[0m[38;2;230;219;116m"[0m[38;2;230;219;116ma[0m[38;2;230;219;116m"[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mb[0m[38;2;230;219;116m"[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mc[0m[38;2;230;219;116m"[0m[38;2;248;248;242m][0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooObj[0m[38;2;248;248;242m([0m[3;38;2;253;151;31msomeObj[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m[38;2;248;248;242m [0m[38;2;248;248;242mstr[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mhi[0m[38;2;230;219;116m"[0m[38;2;248;248;242m,[0m[38;2;248;248;242m [0m[38;2;248;248;242mint[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m2[0m[38;2;248;248;242m [0m[38;2;248;248;242m}[0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m OperationDefintion[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mquery[0m[38;2;248;248;242m [0m[38;2;166;226;46m_A1[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mgetThings[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mstrArg[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mstring[0m[38;2;230;219;116m"[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mid[0m[38;2;248;248;242m [0m[38;2;117;113;94m#[0m[38;2;117;113;94m commas here are ignored but valid[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mname[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mquery[0m[38;2;248;248;242m [0m[38;2;166;226;46m_A2[0m[38;2;248;248;242m([0m[38;2;255;255;255m$[0m[3;38;2;253;151;31mx[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mString[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46msomeFn[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mepisode[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;255;255;255m$[0m[38;2;255;255;255mx[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mname[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mmutation[0m[38;2;248;248;242m [0m[38;2;166;226;46mB1[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mchangeThings[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mintArg[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m123[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mparent[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mnestedField1[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mnestedField2[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114msubscription[0m[38;2;248;248;242m [0m[38;2;166;226;46mC1_Hello[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46msubsribePlease[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mfloatArg[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;190;132;255m1.4[0m[38;2;248;248;242m)[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mid[0m
|
||||||
|
[38;2;248;248;242m ...[0m[38;2;166;226;46msubsriberFields[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;248;248;242m}[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m TypeSystemDefinition :[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m SchemaDefinition[0m
|
||||||
|
[38;2;117;113;94m#[0m[38;2;117;113;94m TypeDefinition[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mschema[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;249;38;114mquery[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mQuery[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;249;38;114mmutation[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mMutation[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mtype[0m[38;2;248;248;242m [0m[38;2;166;226;46mQuery[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;230;219;116m"""[0m
|
||||||
|
[38;2;230;219;116m Can provide documentation this way.[0m
|
||||||
|
[38;2;230;219;116m [0m[38;2;230;219;116m"""[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mscalars[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mScalars[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46msomeList[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mSomeLists[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooBar[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mFooBar[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114minterface[0m[38;2;248;248;242m [0m[38;2;166;226;46mThing[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mid[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mID[0m[38;2;249;38;114m![0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mtype[0m[38;2;248;248;242m [0m[38;2;166;226;46mScalars[0m[38;2;248;248;242m [0m[38;2;249;38;114mimplements[0m[38;2;248;248;242m [0m[38;2;248;248;242mThing[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mid[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mID[0m[38;2;249;38;114m![0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mint[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mInt[0m[38;2;249;38;114m![0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfloat[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mFloat[0m[38;2;249;38;114m![0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mstr[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mString[0m[38;2;249;38;114m![0m[38;2;248;248;242m [0m[38;2;248;248;242m@[0m[38;2;102;217;239mdeprecated[0m[38;2;248;248;242m([0m[3;38;2;253;151;31mreason[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;230;219;116m"[0m[38;2;230;219;116mNeed to test a directive[0m[38;2;230;219;116m"[0m[38;2;248;248;242m)[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mbool[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mBoolean[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mtype[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mStringTypes[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mtype[0m[38;2;248;248;242m [0m[38;2;166;226;46mSomeLists[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mints[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;249;38;114m[[0m[3;38;2;166;226;46mInt[0m[38;2;249;38;114m![0m[38;2;249;38;114m][0m[38;2;249;38;114m![0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mtype[0m[38;2;248;248;242m [0m[38;2;166;226;46mFoo[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mfooVal[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mString[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mtype[0m[38;2;248;248;242m [0m[38;2;166;226;46mBar[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mbarVal[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mString[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114munion[0m[38;2;248;248;242m [0m[38;2;166;226;46mFooBar[0m[38;2;248;248;242m [0m[38;2;248;248;242m=[0m[38;2;248;248;242m [0m[38;2;248;248;242mFoo[0m[38;2;248;248;242m [0m[38;2;249;38;114m|[0m[38;2;248;248;242m [0m[38;2;248;248;242mBar[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114menum[0m[38;2;248;248;242m [0m[38;2;166;226;46mStringTypes[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mONE[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mTWO[0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114minput[0m[38;2;248;248;242m [0m[38;2;166;226;46mXyz[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[3;38;2;253;151;31mid[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mID[0m[38;2;249;38;114m![0m
|
||||||
|
[38;2;248;248;242m}[0m
|
||||||
|
|
||||||
|
[38;2;249;38;114mtype[0m[38;2;248;248;242m [0m[38;2;166;226;46mMutation[0m[38;2;248;248;242m [0m[38;2;248;248;242m{[0m
|
||||||
|
[38;2;248;248;242m [0m[38;2;166;226;46mcreateXyz[0m[38;2;248;248;242m([0m[3;38;2;253;151;31minput[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mxyz[0m[38;2;249;38;114m![0m[38;2;248;248;242m)[0m[38;2;248;248;242m:[0m[38;2;248;248;242m [0m[38;2;248;248;242mXyz[0m[38;2;249;38;114m![0m
|
||||||
|
[38;2;248;248;242m}[0m
|
145
tests/syntax-tests/source/GraphQL/test.graphql
Normal file
145
tests/syntax-tests/source/GraphQL/test.graphql
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
# Token::
|
||||||
|
# Punctuator
|
||||||
|
# Name
|
||||||
|
# IntValue
|
||||||
|
# FloatValue
|
||||||
|
# StringValue
|
||||||
|
|
||||||
|
# Punctuator:: one of
|
||||||
|
# ! $ ( ) ... : = @ [ ] { | }
|
||||||
|
|
||||||
|
# Name::
|
||||||
|
# /[_A-Za-z][_0-9A-Za-z]*/
|
||||||
|
|
||||||
|
# Document :
|
||||||
|
# Definition (list)
|
||||||
|
|
||||||
|
# Definition :
|
||||||
|
# ExecutableDefinition
|
||||||
|
# TypeSystemDefinition
|
||||||
|
# TypeSystemExtension
|
||||||
|
|
||||||
|
# ExecutableDefinition :
|
||||||
|
# FragmentDefinition
|
||||||
|
# OperationDefintion
|
||||||
|
|
||||||
|
# FragmentDefinition
|
||||||
|
|
||||||
|
type someType {
|
||||||
|
id: ID
|
||||||
|
}
|
||||||
|
|
||||||
|
fragment subsriberFields on someType {
|
||||||
|
id
|
||||||
|
name
|
||||||
|
fooInt(int: 1234, negInt: -56789, zero: 0)
|
||||||
|
fooFloat(
|
||||||
|
float: 1.1
|
||||||
|
floatExp: 1.4e10
|
||||||
|
floatExpSign1: 1.4e+10
|
||||||
|
floatExpSign2: 1.5e-40
|
||||||
|
floatExpBigE: 1.5E10
|
||||||
|
)
|
||||||
|
fooBool(x: true, y: false)
|
||||||
|
fooString(str: "hello", strUni: "\u2116", strEscWs: "\t")
|
||||||
|
fooLongStr(
|
||||||
|
lStr: """
|
||||||
|
Hello Reader,
|
||||||
|
This is a long string block.
|
||||||
|
Best,
|
||||||
|
Writer
|
||||||
|
"""
|
||||||
|
)
|
||||||
|
fooNull(nullThing: null)
|
||||||
|
fooList(numList: [1, 2, 3], strList: ["a", "b", "c"])
|
||||||
|
fooObj(someObj: { str: "hi", int: 2 })
|
||||||
|
}
|
||||||
|
|
||||||
|
# OperationDefintion
|
||||||
|
|
||||||
|
query _A1 {
|
||||||
|
getThings(strArg: "string") {
|
||||||
|
id # commas here are ignored but valid
|
||||||
|
name
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
query _A2($x: String) {
|
||||||
|
someFn(episode: $x) {
|
||||||
|
name
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
mutation B1 {
|
||||||
|
changeThings(intArg: 123) {
|
||||||
|
parent {
|
||||||
|
nestedField1
|
||||||
|
nestedField2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
subscription C1_Hello {
|
||||||
|
subsribePlease(floatArg: 1.4) {
|
||||||
|
id
|
||||||
|
...subsriberFields
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# TypeSystemDefinition :
|
||||||
|
# SchemaDefinition
|
||||||
|
# TypeDefinition
|
||||||
|
|
||||||
|
schema {
|
||||||
|
query: Query
|
||||||
|
mutation: Mutation
|
||||||
|
}
|
||||||
|
|
||||||
|
type Query {
|
||||||
|
"""
|
||||||
|
Can provide documentation this way.
|
||||||
|
"""
|
||||||
|
scalars: Scalars
|
||||||
|
someList: SomeLists
|
||||||
|
fooBar: FooBar
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Thing {
|
||||||
|
id: ID!
|
||||||
|
}
|
||||||
|
|
||||||
|
type Scalars implements Thing {
|
||||||
|
id: ID!
|
||||||
|
int: Int!
|
||||||
|
float: Float!
|
||||||
|
str: String! @deprecated(reason: "Need to test a directive")
|
||||||
|
bool: Boolean
|
||||||
|
type: StringTypes
|
||||||
|
}
|
||||||
|
|
||||||
|
type SomeLists {
|
||||||
|
ints: [Int!]!
|
||||||
|
}
|
||||||
|
|
||||||
|
type Foo {
|
||||||
|
fooVal: String
|
||||||
|
}
|
||||||
|
|
||||||
|
type Bar {
|
||||||
|
barVal: String
|
||||||
|
}
|
||||||
|
|
||||||
|
union FooBar = Foo | Bar
|
||||||
|
|
||||||
|
enum StringTypes {
|
||||||
|
ONE
|
||||||
|
TWO
|
||||||
|
}
|
||||||
|
|
||||||
|
input Xyz {
|
||||||
|
id: ID!
|
||||||
|
}
|
||||||
|
|
||||||
|
type Mutation {
|
||||||
|
createXyz(input: xyz!): Xyz!
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user