From a711151fd9306403cd8fc4b62a2356977e07ea58 Mon Sep 17 00:00:00 2001 From: David Anthoff Date: Thu, 23 Nov 2017 17:17:37 -0800 Subject: [PATCH] Add lifted version of split --- src/DataValues.jl | 1 + src/scalar/strings.jl | 15 +++++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 src/scalar/strings.jl diff --git a/src/DataValues.jl b/src/DataValues.jl index 51c7983..80faab8 100644 --- a/src/DataValues.jl +++ b/src/DataValues.jl @@ -10,6 +10,7 @@ export dropna, dropna!, padna!, padna include("scalar/core.jl") include("scalar/broadcast.jl") include("scalar/operations.jl") +include("scalar/strings.jl") include("array/typedefs.jl") include("array/constructors.jl") diff --git a/src/scalar/strings.jl b/src/scalar/strings.jl new file mode 100644 index 0000000..8b11cf4 --- /dev/null +++ b/src/scalar/strings.jl @@ -0,0 +1,15 @@ +function Base.split(str::DataValue{T}) where {T<:AbstractString} + if isnull(str) + return SubString{T}[] + else + return split(get(str)) + end +end + +function Base.split(str::DataValue{T}, splitter; kwargs...) where {T<:AbstractString} + if isnull(str) + return SubString{T}[] + else + return split(get(str), splitter; kwargs...) + end +end