0 | module Language.LSP.Message.Progress
3 | import Language.LSP.Message.Derive
4 | import Language.LSP.Message.Utils
5 | import Language.Reflection
7 | %language ElabReflection
12 | ProgressToken : Type
13 | ProgressToken = OneOf [Int, String]
17 | record WorkDoneProgressOptions where
18 | constructor MkWorkDoneProgressOptions
19 | workDoneProgress : Maybe Bool
20 | %runElab deriveJSON defaultOpts `{WorkDoneProgressOptions
}
24 | record WorkDoneProgressParams where
25 | constructor MkWorkDoneProgressParams
26 | workDoneToken : Maybe ProgressToken
27 | %runElab deriveJSON defaultOpts `{WorkDoneProgressParams
}
31 | record PartialResultParams where
32 | constructor MkPartialResultParams
33 | partialResultToken : Maybe ProgressToken
34 | %runElab deriveJSON defaultOpts `{PartialResultParams
}
38 | record WorkDoneProgressBegin where
39 | constructor MkWorkDoneProgressBegin
41 | cancellable : Maybe Bool
42 | message : Maybe String
43 | percentage : Maybe Int
44 | %runElab deriveJSON ({staticFields := [("kind", JString "begin")]} defaultOpts) `{WorkDoneProgressBegin
}
48 | record WorkDoneProgressReport where
49 | constructor MkWorkDoneProgressReport
50 | cancellable : Maybe Bool
51 | message : Maybe String
52 | percentage : Maybe Int
53 | %runElab deriveJSON ({staticFields := [("kind", JString "report")]} defaultOpts) `{WorkDoneProgressReport
}
57 | record WorkDoneProgressEnd where
58 | constructor MkWorkDoneProgressEnd
59 | message : Maybe String
60 | %runElab deriveJSON ({staticFields := [("kind", JString "end")]} defaultOpts) `{WorkDoneProgressEnd
}