UNPKG

ember-source

Version:

A JavaScript framework for creating ambitious web applications

134 lines (131 loc) 6.44 kB
const SIGN_BIT = -536870913; const MAX_INT = ~SIGN_BIT - 1; const MIN_INT = ~MAX_INT; function isHandle(value) { return value >= 0; } function constants(...values) { return [false, true, null, undefined, ...values]; } function isSmallInt(value) { return value % 1 === 0 && value <= MAX_INT && value >= MIN_INT; } function encodeNegative(num) { return num & SIGN_BIT; } function decodeNegative(num) { return num | ~SIGN_BIT; } function encodePositive(num) { return ~num; } function decodePositive(num) { return ~num; } function encodeHandle(num) { return num; } function decodeHandle(num) { return num; } function encodeImmediate(num) { num |= 0; return num < 0 ? encodeNegative(num) : encodePositive(num); } function decodeImmediate(num) { num |= 0; return num > SIGN_BIT ? decodePositive(num) : decodeNegative(num); } [1, -1].forEach(x => decodeImmediate(encodeImmediate(x))); const VM_HELPER_OP = 16; const VM_SET_NAMED_VARIABLES_OP = 17; const VM_SET_BLOCKS_OP = 18; const VM_SET_VARIABLE_OP = 19; const VM_SET_BLOCK_OP = 20; const VM_GET_VARIABLE_OP = 21; const VM_GET_PROPERTY_OP = 22; const VM_GET_BLOCK_OP = 23; const VM_SPREAD_BLOCK_OP = 24; const VM_HAS_BLOCK_OP = 25; const VM_HAS_BLOCK_PARAMS_OP = 26; const VM_CONCAT_OP = 27; const VM_CONSTANT_OP = 28; const VM_CONSTANT_REFERENCE_OP = 29; const VM_PRIMITIVE_OP = 30; const VM_PRIMITIVE_REFERENCE_OP = 31; const VM_DUP_OP = 33; const VM_POP_OP = 34; const VM_LOAD_OP = 35; const VM_FETCH_OP = 36; const VM_ROOT_SCOPE_OP = 37; const VM_VIRTUAL_ROOT_SCOPE_OP = 38; const VM_CHILD_SCOPE_OP = 39; const VM_POP_SCOPE_OP = 40; const VM_TEXT_OP = 41; const VM_COMMENT_OP = 42; const VM_APPEND_HTML_OP = 43; const VM_APPEND_SAFE_HTML_OP = 44; const VM_APPEND_DOCUMENT_FRAGMENT_OP = 45; const VM_APPEND_NODE_OP = 46; const VM_APPEND_TEXT_OP = 47; const VM_OPEN_ELEMENT_OP = 48; const VM_OPEN_DYNAMIC_ELEMENT_OP = 49; const VM_PUSH_REMOTE_ELEMENT_OP = 50; const VM_STATIC_ATTR_OP = 51; const VM_DYNAMIC_ATTR_OP = 52; const VM_COMPONENT_ATTR_OP = 53; const VM_FLUSH_ELEMENT_OP = 54; const VM_CLOSE_ELEMENT_OP = 55; const VM_POP_REMOTE_ELEMENT_OP = 56; const VM_MODIFIER_OP = 57; const VM_BIND_DYNAMIC_SCOPE_OP = 58; const VM_PUSH_DYNAMIC_SCOPE_OP = 59; const VM_POP_DYNAMIC_SCOPE_OP = 60; const VM_COMPILE_BLOCK_OP = 61; const VM_PUSH_BLOCK_SCOPE_OP = 62; const VM_PUSH_SYMBOL_TABLE_OP = 63; const VM_INVOKE_YIELD_OP = 64; const VM_JUMP_IF_OP = 65; const VM_JUMP_UNLESS_OP = 66; const VM_JUMP_EQ_OP = 67; const VM_ASSERT_SAME_OP = 68; const VM_ENTER_OP = 69; const VM_EXIT_OP = 70; const VM_TO_BOOLEAN_OP = 71; const VM_ENTER_LIST_OP = 72; const VM_EXIT_LIST_OP = 73; const VM_ITERATE_OP = 74; const VM_MAIN_OP = 75; const VM_CONTENT_TYPE_OP = 76; const VM_CURRY_OP = 77; const VM_PUSH_COMPONENT_DEFINITION_OP = 78; const VM_PUSH_DYNAMIC_COMPONENT_INSTANCE_OP = 79; const VM_RESOLVE_DYNAMIC_COMPONENT_OP = 80; const VM_RESOLVE_CURRIED_COMPONENT_OP = 81; const VM_PUSH_ARGS_OP = 82; const VM_PUSH_EMPTY_ARGS_OP = 83; const VM_PREPARE_ARGS_OP = 85; const VM_CAPTURE_ARGS_OP = 86; const VM_CREATE_COMPONENT_OP = 87; const VM_REGISTER_COMPONENT_DESTRUCTOR_OP = 88; const VM_PUT_COMPONENT_OPERATIONS_OP = 89; const VM_GET_COMPONENT_SELF_OP = 90; const VM_GET_COMPONENT_TAG_NAME_OP = 91; const VM_GET_COMPONENT_LAYOUT_OP = 92; const VM_POPULATE_LAYOUT_OP = 95; const VM_INVOKE_COMPONENT_LAYOUT_OP = 96; const VM_BEGIN_COMPONENT_TRANSACTION_OP = 97; const VM_COMMIT_COMPONENT_TRANSACTION_OP = 98; const VM_DID_CREATE_ELEMENT_OP = 99; const VM_DID_RENDER_LAYOUT_OP = 100; const VM_DEBUGGER_OP = 103; const VM_STATIC_COMPONENT_ATTR_OP = 105; const VM_DYNAMIC_CONTENT_TYPE_OP = 106; const VM_DYNAMIC_HELPER_OP = 107; const VM_DYNAMIC_MODIFIER_OP = 108; const VM_IF_INLINE_OP = 109; const VM_NOT_OP = 110; const VM_GET_DYNAMIC_VAR_OP = 111; const VM_LOG_OP = 112; const VM_SYSCALL_SIZE = 113; export { VM_CAPTURE_ARGS_OP as $, VM_ENTER_OP as A, VM_EXIT_OP as B, VM_PUSH_SYMBOL_TABLE_OP as C, VM_PUSH_BLOCK_SCOPE_OP as D, VM_COMPILE_BLOCK_OP as E, VM_INVOKE_YIELD_OP as F, VM_JUMP_IF_OP as G, VM_JUMP_UNLESS_OP as H, VM_JUMP_EQ_OP as I, VM_TO_BOOLEAN_OP as J, VM_TEXT_OP as K, VM_COMMENT_OP as L, VM_OPEN_ELEMENT_OP as M, VM_OPEN_DYNAMIC_ELEMENT_OP as N, VM_PUSH_REMOTE_ELEMENT_OP as O, VM_POP_REMOTE_ELEMENT_OP as P, VM_FLUSH_ELEMENT_OP as Q, VM_CLOSE_ELEMENT_OP as R, VM_MODIFIER_OP as S, VM_DYNAMIC_MODIFIER_OP as T, VM_STATIC_ATTR_OP as U, VM_MAIN_OP as V, VM_DYNAMIC_ATTR_OP as W, VM_PUSH_COMPONENT_DEFINITION_OP as X, VM_RESOLVE_DYNAMIC_COMPONENT_OP as Y, VM_PUSH_ARGS_OP as Z, VM_PUSH_EMPTY_ARGS_OP as _, VM_CONTENT_TYPE_OP as a, VM_PREPARE_ARGS_OP as a0, VM_CREATE_COMPONENT_OP as a1, VM_REGISTER_COMPONENT_DESTRUCTOR_OP as a2, VM_BEGIN_COMPONENT_TRANSACTION_OP as a3, VM_PUT_COMPONENT_OPERATIONS_OP as a4, VM_COMPONENT_ATTR_OP as a5, VM_STATIC_COMPONENT_ATTR_OP as a6, VM_DID_CREATE_ELEMENT_OP as a7, VM_GET_COMPONENT_SELF_OP as a8, VM_GET_COMPONENT_TAG_NAME_OP as a9, VM_DYNAMIC_CONTENT_TYPE_OP as aA, VM_ENTER_LIST_OP as aB, VM_EXIT_LIST_OP as aC, VM_ITERATE_OP as aD, constants as aE, encodeHandle as aF, isSmallInt as aG, encodeImmediate as aH, VM_GET_COMPONENT_LAYOUT_OP as aa, VM_POPULATE_LAYOUT_OP as ab, VM_VIRTUAL_ROOT_SCOPE_OP as ac, VM_SET_NAMED_VARIABLES_OP as ad, VM_SET_BLOCKS_OP as ae, VM_INVOKE_COMPONENT_LAYOUT_OP as af, VM_DID_RENDER_LAYOUT_OP as ag, VM_COMMIT_COMPONENT_TRANSACTION_OP as ah, VM_DEBUGGER_OP as ai, VM_CURRY_OP as aj, VM_DYNAMIC_HELPER_OP as ak, VM_HELPER_OP as al, VM_GET_VARIABLE_OP as am, VM_SET_VARIABLE_OP as an, VM_SET_BLOCK_OP as ao, VM_ROOT_SCOPE_OP as ap, VM_GET_PROPERTY_OP as aq, VM_GET_BLOCK_OP as ar, VM_SPREAD_BLOCK_OP as as, VM_HAS_BLOCK_OP as at, VM_HAS_BLOCK_PARAMS_OP as au, VM_CONCAT_OP as av, VM_IF_INLINE_OP as aw, VM_NOT_OP as ax, VM_GET_DYNAMIC_VAR_OP as ay, VM_LOG_OP as az, VM_ASSERT_SAME_OP as b, VM_APPEND_HTML_OP as c, VM_APPEND_TEXT_OP as d, VM_RESOLVE_CURRIED_COMPONENT_OP as e, VM_PUSH_DYNAMIC_COMPONENT_INSTANCE_OP as f, VM_APPEND_SAFE_HTML_OP as g, VM_APPEND_DOCUMENT_FRAGMENT_OP as h, VM_APPEND_NODE_OP as i, VM_SYSCALL_SIZE as j, VM_CHILD_SCOPE_OP as k, VM_POP_SCOPE_OP as l, VM_PUSH_DYNAMIC_SCOPE_OP as m, VM_POP_DYNAMIC_SCOPE_OP as n, VM_CONSTANT_OP as o, decodeHandle as p, VM_CONSTANT_REFERENCE_OP as q, VM_PRIMITIVE_OP as r, isHandle as s, decodeImmediate as t, VM_PRIMITIVE_REFERENCE_OP as u, VM_DUP_OP as v, VM_POP_OP as w, VM_LOAD_OP as x, VM_FETCH_OP as y, VM_BIND_DYNAMIC_SCOPE_OP as z };