Skip to content

Instantly share code, notes, and snippets.

@izgzhen
Created March 25, 2019 03:46
Show Gist options
  • Save izgzhen/61cc42da1f938f81150d7d2a27890f93 to your computer and use it in GitHub Desktop.
Save izgzhen/61cc42da1f938f81150d7d2a27890f93 to your computer and use it in GitHub Desktop.
// A
std::vector<LINEITEM> _var45518 = (std::vector<LINEITEM>());
std::unordered_map<LINEITEM, int, _HashLINEITEM> _histogram45520 = (std::unordered_map<LINEITEM, int, _HashLINEITEM>());
for (LINEITEM _x45521 : _var5824)
{
std::unordered_map<LINEITEM, int, _HashLINEITEM>::iterator _map_iterator45530 = _histogram45520.find(_x45521);
if ((_map_iterator45530 == _histogram45520.end()))
{
_map_iterator45530 = (_histogram45520.emplace(_x45521, 0).first);
}
int &_count45522 = _map_iterator45530->second;
_count45522 = (_count45522 + 1);
}
{
std::unordered_map<LINEITEM, int, _HashLINEITEM>::iterator _map_iterator45531 = _histogram45520.find((LINEITEM(orderkey, partkey, suppkey, linenumber, quantity, extendedprice, discount, tax, returnflag, linestatus, shipdate, commitdate, receiptdate, shipinstruct, shipmode, comment)));
if ((_map_iterator45531 == _histogram45520.end()))
{
_map_iterator45531 = (_histogram45520.emplace((LINEITEM(orderkey, partkey, suppkey, linenumber, quantity, extendedprice, discount, tax, returnflag, linestatus, shipdate, commitdate, receiptdate, shipinstruct, shipmode, comment)), 0).first);
}
int &_count45522 = _map_iterator45531->second;
_count45522 = (_count45522 + 1);
}
// ???
for (LINEITEM _var45519 : _var5824)
{
std::unordered_map<LINEITEM, int, _HashLINEITEM>::const_iterator _map_iterator45532 = (_histogram45520.find(_var45519));
int _v45533;
if ((_map_iterator45532 == _histogram45520.end()))
{
_v45533 = 0;
}
else
{
_v45533 = (_map_iterator45532->second);
}
if ((_v45533 > 0))
{
std::unordered_map<LINEITEM, int, _HashLINEITEM>::iterator _map_iterator45534 = _histogram45520.find(_var45519);
if ((_map_iterator45534 == _histogram45520.end()))
{
_map_iterator45534 = (_histogram45520.emplace(_var45519, 0).first);
}
int &_count45523 = _map_iterator45534->second;
_count45523 = (_count45523 - 1);
}
else
{
// /home/zgzhen/projects/cozy/cozy/syntax_tools.py fresh_var 36
// /home/zgzhen/projects/cozy/cozy/codegen/optimization.py visit_iterable 300
_var45518.push_back(_var45519);
}
}
std::vector<LINEITEM> _var45378 = std::move(_var45518);
// A
std::vector<LINEITEM> _var45524 = (std::vector<LINEITEM>());
std::unordered_map<LINEITEM, int, _HashLINEITEM> _histogram45526 = (std::unordered_map<LINEITEM, int, _HashLINEITEM>());
for (LINEITEM _x45527 : _var5824)
{
std::unordered_map<LINEITEM, int, _HashLINEITEM>::iterator _map_iterator45535 = _histogram45526.find(_x45527);
if ((_map_iterator45535 == _histogram45526.end()))
{
_map_iterator45535 = (_histogram45526.emplace(_x45527, 0).first);
}
int &_count45528 = _map_iterator45535->second;
_count45528 = (_count45528 + 1);
}
for (LINEITEM _var45525 : _var5824)
{
std::unordered_map<LINEITEM, int, _HashLINEITEM>::const_iterator _map_iterator45536 = (_histogram45526.find(_var45525));
int _v45537;
if ((_map_iterator45536 == _histogram45526.end()))
{
_v45537 = 0;
}
else
{
_v45537 = (_map_iterator45536->second);
}
if ((_v45537 > 0))
{
std::unordered_map<LINEITEM, int, _HashLINEITEM>::iterator _map_iterator45538 = _histogram45526.find(_var45525);
if ((_map_iterator45538 == _histogram45526.end()))
{
_map_iterator45538 = (_histogram45526.emplace(_var45525, 0).first);
}
int &_count45529 = _map_iterator45538->second;
_count45529 = (_count45529 - 1);
}
else
{
// /home/zgzhen/projects/cozy/cozy/syntax_tools.py fresh_var 36
// /home/zgzhen/projects/cozy/cozy/codegen/optimization.py visit_iterable 300
_var45524.push_back(_var45525);
}
}
{
LINEITEM _var45525 = (LINEITEM(orderkey, partkey, suppkey, linenumber, quantity, extendedprice, discount, tax, returnflag, linestatus, shipdate, commitdate, receiptdate, shipinstruct, shipmode, comment));
std::unordered_map<LINEITEM, int, _HashLINEITEM>::const_iterator _map_iterator45539 = (_histogram45526.find(_var45525));
int _v45540;
if ((_map_iterator45539 == _histogram45526.end()))
{
_v45540 = 0;
}
else
{
_v45540 = (_map_iterator45539->second);
}
if ((_v45540 > 0))
{
std::unordered_map<LINEITEM, int, _HashLINEITEM>::iterator _map_iterator45541 = _histogram45526.find(_var45525);
if ((_map_iterator45541 == _histogram45526.end()))
{
_map_iterator45541 = (_histogram45526.emplace(_var45525, 0).first);
}
int &_count45529 = _map_iterator45541->second;
_count45529 = (_count45529 - 1);
}
else
{
// /home/zgzhen/projects/cozy/cozy/syntax_tools.py fresh_var 36
// /home/zgzhen/projects/cozy/cozy/codegen/optimization.py visit_iterable 300
_var45524.push_back(_var45525);
}
}
// ???
std::vector<LINEITEM> _var45379 = std::move(_var45524);
for (LINEITEM _var6282 : _var45378)
{
auto _it45542(::std::find(_var5824.begin(), _var5824.end(), _var6282));
if (_it45542 != _var5824.end())
{
_var5824.erase(_it45542);
}
}
for (LINEITEM _var6282 : _var45379)
{
// /home/zgzhen/projects/cozy/cozy/syntax_tools.py join 157
// /home/zgzhen/projects/cozy/cozy/syntax_tools.py shallow_copy 172
_var5824.push_back(_var6282);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment