UNPKG

molstar

Version:

A comprehensive macromolecular library.

37 lines 1.6 kB
/* * Copyright (c) 2018 Mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal <david.sehnal@gmail.com> */ var Type; (function (Type) { function Variable(name, type, isConstraint) { return { kind: 'variable', name: name, type: type, isConstraint: isConstraint }; } Type.Variable = Variable; function Value(namespace, name, parent) { return { kind: 'value', namespace: namespace, name: name, parent: parent }; } Type.Value = Value; function Container(namespace, name, child, alias) { return { kind: 'container', namespace: namespace, name: name, child: child, alias: alias }; } Type.Container = Container; function Union(types) { return { kind: 'union', types: types }; } Type.Union = Union; function OneOf(namespace, name, type, values) { var vals = Object.create(null); for (var _i = 0, values_1 = values; _i < values_1.length; _i++) { var v = values_1[_i]; vals[v] = true; } return { kind: 'oneof', namespace: namespace, name: name, type: type, values: vals }; } Type.OneOf = OneOf; Type.Any = { kind: 'any' }; Type.AnyValue = { kind: 'any-value' }; Type.Num = Value('', 'Number'); Type.Str = Value('', 'String'); Type.Bool = OneOf('', 'Bool', Type.Str, ['true', 'false']); function oneOfValues(_a) { var values = _a.values; return Object.keys(values).sort(); } Type.oneOfValues = oneOfValues; })(Type || (Type = {})); export { Type }; //# sourceMappingURL=type.js.map