MCPcopy Create free account
hub / github.com/coder/guts / ToTypescriptExpressionNode

Method ToTypescriptExpressionNode

bindings/bindings.go:98–159  ·  view source on GitHub ↗
(ety ExpressionType)

Source from the content-addressed store, hash-verified

96}
97
98func (b *Bindings) ToTypescriptExpressionNode(ety ExpressionType) (*goja.Object, error) {
99 var siObj *goja.Object
100 var err error
101
102 switch ety := ety.(type) {
103 case *LiteralKeyword:
104 siObj, err = b.LiteralKeyword(ety)
105 case *ReferenceType:
106 siObj, err = b.Reference(ety)
107 case *TupleType:
108 siObj, err = b.Tuple(ety.Length, ety.Node)
109 case *ArrayType:
110 siObj, err = b.Array(ety.Node)
111 case *UnionType:
112 siObj, err = b.Union(ety)
113 case *EnumMember:
114 siObj, err = b.EnumMember(ety)
115 case *Null:
116 siObj, err = b.Null()
117 case *VariableDeclarationList:
118 siObj, err = b.VariableDeclarationList(ety)
119 case *VariableDeclaration:
120 siObj, err = b.VariableDeclaration(ety)
121 case *LiteralType:
122 switch v := ety.Value.(type) {
123 case string:
124 siObj, err = b.StringLiteral(v)
125 case int64:
126 siObj, err = b.NumericLiteral(v)
127 case float64:
128 siObj, err = b.FloatLiteral(v)
129 case bool:
130 siObj, err = b.BooleanLiteral(0)
131 default:
132 return nil, xerrors.Errorf("unsupported literal type: %T", ety.Value)
133 }
134 case *ArrayLiteralType:
135 siObj, err = b.ArrayLiteral(ety)
136 case *OperatorNodeType:
137 siObj, err = b.OperatorNode(ety)
138 case *TypeLiteralNode:
139 siObj, err = b.TypeLiteralNode(ety)
140 case *TypeIntersection:
141 siObj, err = b.TypeIntersection(ety)
142 case *IdentifierExpression:
143 siObj, err = b.IdentifierExpression(ety)
144 case *PropertyAccessExpression:
145 siObj, err = b.PropertyAccessExpression(ety)
146 case *CallExpression:
147 siObj, err = b.CallExpression(ety)
148 case *ObjectLiteralExpression:
149 siObj, err = b.ObjectLiteralExpression(ety)
150 case *ArrowFunction:
151 siObj, err = b.ArrowFunction(ety)
152 case *TypeQuery:
153 siObj, err = b.TypeQuery(ety)
154 default:
155 return nil, xerrors.Errorf("unsupported type for field type: %T", ety)

Callers 3

ToTypescriptNodeMethod · 0.95
HeritageClauseMethod · 0.95
TypeParameterMethod · 0.95

Calls 15

LiteralKeywordMethod · 0.95
ReferenceMethod · 0.95
TupleMethod · 0.95
ArrayMethod · 0.95
UnionMethod · 0.95
EnumMemberMethod · 0.95
NullMethod · 0.95
VariableDeclarationMethod · 0.95
StringLiteralMethod · 0.95
NumericLiteralMethod · 0.95
FloatLiteralMethod · 0.95

Tested by

no test coverage detected