Packages
livebook
0.17.0
0.19.8
0.19.7
0.19.6
0.19.5
0.19.4
0.19.3
0.19.2
0.19.1
0.19.0
0.18.6
0.18.5
0.18.4
0.18.3
0.18.2
0.18.1
0.18.0
0.17.3
0.17.2
0.17.1
0.17.0
0.16.4
0.16.3
0.16.2
0.16.1
0.16.0
0.15.5
0.15.4
0.15.3
0.15.2
0.15.1
0.15.0
0.14.7
0.14.6
0.14.5
0.14.4
0.14.3
0.14.2
0.14.1
0.14.0
0.14.0-rc.1
0.14.0-rc.0
0.13.3
0.13.2
0.13.1
0.13.0
0.12.1
0.12.0
0.11.4
0.11.3
0.11.2
0.11.1
0.11.0
0.10.0
0.9.3
0.9.2
0.9.1
0.9.0
0.8.2
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.6.3
0.6.2
0.6.1
0.6.0
0.5.2
0.5.1
0.5.0
0.4.1
0.4.0
0.3.2
0.3.1
0.3.0
0.2.3
0.2.2
0.2.1
0.2.0
0.1.2
0.1.1
0.1.0
Automate code & data workflows with interactive notebooks
Current section
Files
Jump to
Current section
Files
lib/livebook/notebook/cell/code.ex
defmodule Livebook.Notebook.Cell.Code do
# Notebook cell with evaluable code.
#
# It consists of text content that the user can edit and produces
# output once evaluated.
defstruct [
:id,
:source,
:outputs,
:language,
:reevaluate_automatically,
:continue_on_error
]
alias Livebook.Utils
alias Livebook.Notebook.Cell
@type t :: %__MODULE__{
id: Cell.id(),
source: String.t() | :__pruned__,
outputs: list(Cell.indexed_output()),
language: Livebook.Runtime.language(),
reevaluate_automatically: boolean(),
continue_on_error: boolean()
}
@doc """
Returns an empty cell.
"""
@spec new() :: t()
def new() do
%__MODULE__{
id: Utils.random_id(),
source: "",
outputs: [],
language: :elixir,
reevaluate_automatically: false,
continue_on_error: false
}
end
@doc """
Return the list of supported langauges for code cells.
"""
@spec languages() :: list(%{name: String.t(), language: atom()})
def languages() do
[
%{name: "Elixir", language: :elixir},
%{name: "Erlang", language: :erlang},
%{name: "Python", language: :python}
]
end
end