Example #1
0
        public static KalkHalf FromObject(KalkEngine engine, SourceSpan span, object value)
        {
            if (value == null)
            {
                return(new KalkHalf());
            }

            if (value is KalkHalf half)
            {
                return(half);
            }

            if (value is IConvertible convertible)
            {
                return((KalkHalf)convertible.ToSingle(engine));
            }

            throw new ScriptRuntimeException(span, $"The type {engine.GetTypeName(value)} is not convertible to half");
        }