-
Notifications
You must be signed in to change notification settings - Fork 0
/
Type.ToText.pq
44 lines (41 loc) · 1.71 KB
/
Type.ToText.pq
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
let
// Function
typeToTextFunction = (typ as type, optional primitive as logical) as text =>
let
schema = Type.TableSchema(type table [a = typ]){0},
result = if primitive??false then "type " & schema[Kind] else schema[TypeName]
in
result,
// Documentation
typeToTextType =
type function (
typ as ((type type) meta [
Documentation.FieldCaption = "Type",
Documentation.FieldDescription = "Type to get as text"
]),
optional primitive as (type logical meta [
Documentation.FieldCaption = "primitive",
Documentation.FieldDescription = "Give primitive type"
])
)
as text meta
[
Documentation.Name = "Type.ToText",
Documentation.Description = "Gives text representation of given type",
Documentation.LongDescription = "Gives text representation of given type. Optional <code>primitive</code> mode.",
Documentation.Category = "Type",
Documentation.Author = "Spyros Mavroforos",
Documentation.Source = "https://github.com/SpyrosMauro/powerquery",
Documentation.Version = "1",
Documentation.Examples = {[
Description = "<code>type text</code> to text",
Code = "Type.ToText ( type text ) ",
Result = """Text.Type"""
],[
Description = "Primitive <code>type text</code> to text",
Code = "Type.ToText ( type text , true ) ",
Result = """type text"""
]}
]
in
Value.ReplaceType(typeToTextFunction, typeToTextType)