it('should support literals', () => {
   expect(emitStmt(o.literal(0).toStmt())).toEqual('0;');
   expect(emitStmt(o.literal(true).toStmt())).toEqual('true;');
   expect(emitStmt(o.literal('someStr').toStmt())).toEqual(`'someStr';`);
   expect(emitStmt(o.literal('$a').toStmt())).toEqual(`'\\$a';`);
   expect(emitStmt(o.literalArr([o.literal(1)]).toStmt())).toEqual(`[1];`);
   expect(emitStmt(o.literalMap([['someKey', o.literal(1)]]).toStmt()))
       .toEqual(`{'someKey': 1};`);
   expect(emitStmt(
              o.literalMap([['someKey', o.literal(1)]], new o.MapType(o.NUMBER_TYPE)).toStmt()))
       .toEqual(`<String, num>{'someKey': 1};`);
 });
Exemple #2
0
 it('should support literals', () => {
   expect(emitStmt(o.literal(0).toStmt())).toEqual('0;');
   expect(emitStmt(o.literal(true).toStmt())).toEqual('true;');
   expect(emitStmt(o.literal('someStr').toStmt())).toEqual(`'someStr';`);
   expect(emitStmt(o.literalArr([o.literal(1)]).toStmt())).toEqual(`[1];`);
   expect(emitStmt(o.literalMap([['someKey', o.literal(1)]]).toStmt())).toEqual(`{someKey: 1};`);
 });
 it('should apply quotes to each entry within a map produced with literalMap when true', () => {
   expect(
       emitStmt(
           o.literalMap([['a', o.literal('a')], ['*', o.literal('star')]], null, true).toStmt())
           .replace(/\s+/gm, ''))
       .toEqual(`{'a':'a','*':'star'};`);
 });
 it('should support literals', () => {
   expect(emitStmt(o.literal(0).toStmt())).toEqual('0;');
   expect(emitStmt(o.literal(true).toStmt())).toEqual('true;');
   expect(emitStmt(o.literal('someStr').toStmt())).toEqual(`'someStr';`);
   expect(emitStmt(o.literalArr([o.literal(1)]).toStmt())).toEqual(`[1];`);
   expect(emitStmt(o.literalMap([
                      {key: 'someKey', value: o.literal(1), quoted: false},
                      {key: 'a', value: o.literal('a'), quoted: false},
                      {key: '*', value: o.literal('star'), quoted: true},
                    ]).toStmt())
              .replace(/\s+/gm, ''))
       .toEqual(`{someKey:1,a:'a','*':'star'};`);
 });
export var codegenExportsVars = [
  'getExpressions',
];


var _getExpressionsStmts: o.Statement[] = [
  o.variable('readVar')
      .set(o.literal('someValue'))
      .toDeclStmt(),

  o.variable('changedVar').set(o.literal('initialValue')).toDeclStmt(),
  o.variable('changedVar').set(o.literal('changedValue')).toStmt(),

  o.variable('map')
      .set(o.literalMap([
        ['someKey', o.literal('someValue')],
        ['changeable', o.literal('initialValue')],
      ]))
      .toDeclStmt(),
  o.variable('map').key(o.literal('changeable')).set(o.literal('changedValue')).toStmt(),

  o.variable('externalInstance')
      .set(o.importExpr(testDataIdentifier).instantiate([o.literal('someValue')]))
      .toDeclStmt(),
  o.variable('externalInstance').prop('changeable').set(o.literal('changedValue')).toStmt(),

  o.variable('fn')
      .set(o.fn([new o.FnParam('param')],
                [new o.ReturnStatement(o.literalMap([['param', o.variable('param')]]))],
                o.DYNAMIC_TYPE))
      .toDeclStmt(),