Types in constants and variables for definitions.
This commit is contained in:
@@ -1211,7 +1211,7 @@ fn all(array: Array, filter: FnPtr) -> bool;
|
||||
/// let x = [1, 2, 3];
|
||||
/// let y = [true, 'x'];
|
||||
///
|
||||
/// x.push(y);
|
||||
/// x.append(y);
|
||||
///
|
||||
/// print(x); // prints "[1, 2, 3, true, 'x']"
|
||||
/// ```
|
||||
@@ -6480,8 +6480,12 @@ op |(u64, u64) -> u64;
|
||||
op |(u8, u8) -> u8;
|
||||
|
||||
module general_kenobi {
|
||||
const CONSTANT: int;
|
||||
|
||||
/// Returns a string where "hello there" is repeated `n` times.
|
||||
fn hello_there(n: int) -> String;
|
||||
}
|
||||
|
||||
let hello_there;
|
||||
let hello_there: string;
|
||||
|
||||
const HELLO: string;
|
||||
|
@@ -3,8 +3,12 @@ module static;
|
||||
op minus(int, int) -> int;
|
||||
|
||||
module general_kenobi {
|
||||
const CONSTANT: int;
|
||||
|
||||
/// Returns a string where "hello there" is repeated `n` times.
|
||||
fn hello_there(n: int) -> String;
|
||||
}
|
||||
|
||||
let hello_there;
|
||||
let hello_there: string;
|
||||
|
||||
const HELLO: string;
|
||||
|
@@ -1,3 +1,5 @@
|
||||
module static;
|
||||
|
||||
let hello_there;
|
||||
let hello_there: string;
|
||||
|
||||
const HELLO: string;
|
@@ -693,7 +693,7 @@ fn all(array: Array, filter: FnPtr) -> bool;
|
||||
/// let x = [1, 2, 3];
|
||||
/// let y = [true, 'x'];
|
||||
///
|
||||
/// x.push(y);
|
||||
/// x.append(y);
|
||||
///
|
||||
/// print(x); // prints "[1, 2, 3, true, 'x']"
|
||||
/// ```
|
||||
|
@@ -1,4 +1,6 @@
|
||||
module general_kenobi;
|
||||
|
||||
const CONSTANT: int;
|
||||
|
||||
/// Returns a string where "hello there" is repeated `n` times.
|
||||
fn hello_there(n: int) -> String;
|
@@ -3,8 +3,8 @@
|
||||
"general_kenobi": {
|
||||
"functions": [
|
||||
{
|
||||
"baseHash": 14798413363692662073,
|
||||
"fullHash": 2039416761244929762,
|
||||
"baseHash": 727795846011184342,
|
||||
"fullHash": 5101524478338862216,
|
||||
"namespace": "internal",
|
||||
"access": "public",
|
||||
"name": "hello_there",
|
||||
@@ -27,8 +27,8 @@
|
||||
},
|
||||
"functions": [
|
||||
{
|
||||
"baseHash": 17487674894006547092,
|
||||
"fullHash": 13058993152904417424,
|
||||
"baseHash": 17133166385977770750,
|
||||
"fullHash": 11299449021188202345,
|
||||
"namespace": "global",
|
||||
"access": "public",
|
||||
"name": "minus",
|
||||
|
@@ -3,6 +3,9 @@ use rhai::{Engine, EvalAltResult, Scope};
|
||||
|
||||
#[export_module]
|
||||
pub mod general_kenobi {
|
||||
/// General Kenobi's Constant.
|
||||
pub const CONSTANT: i64 = 42;
|
||||
|
||||
/// Returns a string where "hello there" is repeated `n` times.
|
||||
pub fn hello_there(n: i64) -> String {
|
||||
use std::convert::TryInto;
|
||||
@@ -17,6 +20,9 @@ fn main() -> Result<(), Box<EvalAltResult>> {
|
||||
// This variable will also show up in the definitions, since it will be part of the scope.
|
||||
scope.push("hello_there", "hello there");
|
||||
|
||||
// This constant will also show up in the definitions, since it will be part of the scope.
|
||||
scope.push_constant("HELLO", "hello there");
|
||||
|
||||
#[cfg(not(feature = "no_module"))]
|
||||
engine.register_static_module("general_kenobi", exported_module!(general_kenobi).into());
|
||||
|
||||
|
Reference in New Issue
Block a user