aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authors-ol <s-ol@users.noreply.github.com>2020-03-25 13:20:09 +0000
committers-ol <s-ol@users.noreply.github.com>2020-03-25 13:20:09 +0000
commit54799dd3cec4690db9d15591fa42c6b8a64b4f6f (patch)
tree941c910cf42276d6cdbe8bc46c8aa5a2e92b8be6
parentdocs/guide: per-platform install info (diff)
downloadalive-54799dd3cec4690db9d15591fa42c6b8a64b4f6f.tar.gz
alive-54799dd3cec4690db9d15591fa42c6b8a64b4f6f.zip
add builtin print
-rw-r--r--core/builtin.moon17
1 files changed, 15 insertions, 2 deletions
diff --git a/core/builtin.moon b/core/builtin.moon
index 1ba9293..80e3d8f 100644
--- a/core/builtin.moon
+++ b/core/builtin.moon
@@ -5,7 +5,7 @@
-- documentation.
--
-- @module builtin
-import Action, Op, FnDef, Input from require 'core.base'
+import Action, Op, FnDef, Input, val from require 'core.base'
import ValueStream, LiteralValue from require 'core.stream.value'
import Result from require 'core.result'
import Cell from require 'core.cell'
@@ -282,9 +282,22 @@ trace = ValueStream.meta
}
inner\eval scope
+print = ValueStream.meta
+ meta:
+ name: 'print'
+ summary: "Print string values."
+ examples: { '(print str)' }
+
+ value: class extends Op
+ setup: (inputs) =>
+ value = val.str\match inputs
+ super value: Input.hot value
+
+ tick: => print @inputs.value!
+
{
:doc
- :trace, 'trace!': trace_
+ :trace, 'trace!': trace_, :print
:def, :use
require: require_