Siirry sisältöön

Kooditoiminnot

Kun graafi ei riitä, lohko Koodi suorittaa skriptin.

Käytettävissä on seitsemän kieltä, jotka kaikki suoritetaan sisäänrakennetussa WebAssembly-hiekkalaatikossa: koneellesi ei tarvita mitään tulkkia, eikä skriptillä ole pääsyä tiedostojärjestelmääsi.

KieliMoottori
TypeScriptQuickJS (tyypit poistetaan käännöksessä)
JavaScriptQuickJS
PythonPyodide (WebAssemblyksi käännetty CPython)
LuaLua 5.4 WebAssemblyssä
RubyCRuby WebAssemblyssä
RWebR
C#.NET WebAssemblyssä Roslynin kanssa

Oletuskieli on TypeScript.

Kielestä riippumatta lohko tarjoaa saman:

Tulotvalue (nimeltään input), code (merkkijono)
Lähdötresult
Kokoonpanolanguage, code, timeout, packages
  • input — tuloportissa vastaanotettu arvo.
  • varssuoritusmuuttujat.
  • Kielen vakiotuloste (console.log, print, puts, cat, Console.WriteLine) syöttää suorituslokia.
  • Palautettu arvo lähtee portista result. Virhe tai aikakatkaisu lähtee portista error.

timeout sekunteina: oletuksena 5, enintään 60. Rajan ylittävä skripti keskeytetään ja suoritus jatkuu portista error.

Kenttä packages hyväksyy luettelon muodossa { nom, version }. Tarkat versiot toimivat välimuistin avaimena: riippuvuudet ratkaistaan ensimmäisellä suorituskerralla, tallennetaan välimuistiin ja liitetään sitten offline-tilassa jokaisella seuraavalla suorituksella — myös CI:ssä.

KieliLähde
TypeScript / JavaScriptnpm (kokonaisuus paketoidaan)
PythonPuhtaat Python-wheelit PyPI:stä
LuaLuaRocks (puhtaat Lua-lähteet)
RubyPuhtaat Ruby-gemit
RCRAN, WebR:n WebAssembly-repositorion kautta
C#Ei mitään — vain .NETin vakiokirjasto

Moni tarve on jo katettu lohkoilla, jotka ovat luettavampia ja nopeampia:

TarveLohko
Arvon poimiminen vastauksestaKytkennän valitsin
Merkkijonon muotoiluTransform template
Luettelon suodatus, lajittelu ja koostaminenLuettelot
Tiivistäminen, koodaus ja allekirjoitusKoodaus
Rakenteen tarkistaminenSchema validate

Säästä lohko Koodi aidosti erikoiselle logiikalle.