library;
import self as self;
import "dart:core" as core;

static const field core::int* foo = 42.{core::num::*}(42);
static const field core::String* bar = "hello ${const core::String::fromEnvironment("baz", defaultValue: "world")}!";
static const field core::String* bar2 = "hello2 2".{core::String::+}(self::bar);
static const field core::bool* baz = true && true && (false || true) && 42.{core::num::==}(21.{core::num::*}(4).{core::num::/}(2));
static const field core::Symbol* blaSymbol = #_x;
static method main() → dynamic
  ;
static method _x() → void
  ;


Extra constant evaluation status:
Evaluated: MethodInvocation @ org-dartlang-testcase:///rudimentary_test_01.dart:5:20 -> IntConstant(1764)
Evaluated: StringConcatenation @ org-dartlang-testcase:///rudimentary_test_01.dart:6:18 -> StringConstant("hello 42!")
Evaluated: MethodInvocation @ org-dartlang-testcase:///rudimentary_test_01.dart:8:35 -> StringConstant("hello2 2hello 42!")
Evaluated: LogicalExpression @ org-dartlang-testcase:///rudimentary_test_01.dart:9:50 -> BoolConstant(true)
Evaluated: SymbolLiteral @ org-dartlang-testcase:///rudimentary_test_01.dart:10:19 -> SymbolConstant(#_x)
Extra constant evaluation: evaluated: 5, effectively constant: 5
