当前位置: 首页>>代码示例>>C++>>正文


C++ codet::move_to_operands方法代码示例

本文整理汇总了C++中codet::move_to_operands方法的典型用法代码示例。如果您正苦于以下问题:C++ codet::move_to_operands方法的具体用法?C++ codet::move_to_operands怎么用?C++ codet::move_to_operands使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在codet的用法示例。


在下文中一共展示了codet::move_to_operands方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: static_lifetime_init

void static_lifetime_init(
  const contextt &context,
  codet &dest)
{
  dest=code_blockt();

  // Do assignments based on "value".
  context.foreach_operand_in_order(
    [&dest] (const symbolt& s)
    {
      if(s.static_lifetime)
        init_variable(dest, s);
    }
  );

  // call designated "initialization" functions
  context.foreach_operand_in_order(
    [&dest] (const symbolt& s)
    {
      if(s.type.initialization() && s.type.is_code())
      {
        code_function_callt function_call;
        function_call.function() = symbol_expr(s);
        dest.move_to_operands(function_call);
      }
    }
  );
}
开发者ID:ericksonalves,项目名称:esbmc,代码行数:28,代码来源:c_main.cpp

示例2: symbol

static void
init_variable(codet &dest, const symbolt &sym)
{
  const exprt &value = sym.value;

  if(value.is_nil())
    return;

  assert(!value.type().is_code());

  exprt symbol("symbol", sym.type);
  symbol.identifier(sym.name);

  code_assignt code(symbol, sym.value);
  code.location() = sym.location;

  dest.move_to_operands(code);
}
开发者ID:ericksonalves,项目名称:esbmc,代码行数:18,代码来源:c_main.cpp


注:本文中的codet::move_to_operands方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。