private static object[]? VectorToArray(SymbolicExpression sexp) { RequireTrue(sexp.IsVector()); return(sexp.Type switch { SymbolicExpressionType.CharacterVector => sexp.AsCharacter().ToArray(), SymbolicExpressionType.IntegerVector => sexp.AsInteger().ToArray().Cast <object>().ToArray(), SymbolicExpressionType.LogicalVector => sexp.AsLogical().ToArray().Cast <object>().ToArray(), SymbolicExpressionType.NumericVector => sexp.AsNumeric().ToArray().Cast <object>().ToArray(), _ => default,
private static IConverter ConvertFromLogicalVector(SymbolicExpression sexp) { return(sexp.IsMatrix() ? (IConverter) new MatrixConverter <bool>(sexp.AsLogicalMatrix()) : new VectorConverter <bool>(sexp.AsLogical())); }