Packages
kreuzberg
4.4.0
4.10.2
4.10.1
4.10.0
4.9.9
4.9.7
4.9.5
4.9.4
4.9.3
4.9.2
4.9.1
4.8.6
4.8.5
4.8.4
4.8.3
4.8.2
4.8.1
4.8.0
4.7.4
4.7.3
4.7.2
4.7.1
4.7.0
4.6.3
4.6.2
4.6.1
4.6.0
4.5.4
4.5.3
4.5.2
4.5.1
4.4.6
4.4.5
4.4.4
4.4.3
4.4.2
4.4.1
4.4.0
4.3.8
4.3.7
4.3.6
4.3.5
4.3.4
4.3.3
4.3.2
4.3.0
4.2.15
4.2.14
4.2.13
4.2.12
4.2.11
4.2.10
4.2.9
4.2.8
4.2.7
4.2.6
4.2.5
4.2.4
4.2.3
4.2.2
4.2.1
4.2.0
4.1.2
4.1.1
4.1.0
4.0.8
4.0.7
4.0.6
4.0.4
4.0.3
4.0.2
4.0.1
4.0.0
4.0.0-rc.27
4.0.0-rc.26
High-performance document intelligence library with OCR support
Current section
Files
Jump to
Current section
Files
lib/kreuzberg/processing_warning.ex
defmodule Kreuzberg.ProcessingWarning do
@moduledoc """
Structure representing a warning generated during document processing.
Matches the Rust `ProcessingWarning` struct.
## Fields
* `:source` - The component or stage that generated the warning
* `:message` - Human-readable warning message
"""
@type t :: %__MODULE__{
source: String.t(),
message: String.t()
}
defstruct source: "", message: ""
@doc """
Create a ProcessingWarning struct from a map.
## Examples
iex> Kreuzberg.ProcessingWarning.from_map(%{
...> "source" => "ocr",
...> "message" => "Low confidence detected"
...> })
%Kreuzberg.ProcessingWarning{
source: "ocr",
message: "Low confidence detected"
}
"""
@spec from_map(map()) :: t()
def from_map(data) when is_map(data) do
%__MODULE__{
source: data["source"] || "",
message: data["message"] || ""
}
end
@doc """
Convert a ProcessingWarning struct to a map.
## Examples
iex> warning = %Kreuzberg.ProcessingWarning{source: "ocr", message: "Low confidence"}
iex> Kreuzberg.ProcessingWarning.to_map(warning)
%{
"source" => "ocr",
"message" => "Low confidence"
}
"""
@spec to_map(t()) :: map()
def to_map(%__MODULE__{} = warning) do
%{
"source" => warning.source,
"message" => warning.message
}
end
end