Skip to content

Instantly share code, notes, and snippets.

@mlh758
Created June 4, 2021 17:24
Show Gist options
  • Save mlh758/834b2a0bea52caf5b45cbc7eed4bf4fa to your computer and use it in GitHub Desktop.
Save mlh758/834b2a0bea52caf5b45cbc7eed4bf4fa to your computer and use it in GitHub Desktop.
Query Struct
< _query@1 = #{'__struct__' => 'Elixir.Ecto.Query',aliases => #{},
assocs => [],combinations => [],distinct => nil,
from =>
#{'__struct__' => 'Elixir.Ecto.Query.FromExpr',as => nil,
hints => [],prefix => nil,
source =>
{<<"metrics">>,'Elixir.MeasureLibrary.Metrics.Metric'}},
group_bys => [],havings => [],
joins =>
[#{'__struct__' => 'Elixir.Ecto.Query.JoinExpr',as => nil,
assoc => nil,
file =>
<<"/Users/whoever/elixir/my_app/deps/ecto/lib/ecto/association.ex">>,
hints => [],ix => 2,line => 239,
on =>
#{'__struct__' => 'Elixir.Ecto.Query.QueryExpr',
expr =>
{'and',[],
[{'and',[],
[{'and',[],
[{'==',[],
[{{'.',[],[{'&',[],[0]},id]},[],[]},
{{'.',[],[{'&',[],[2]},parent_id]},[],[]}]},
{'==',[],
[{{'.',[],[{'&',[],[2]},parent_type]},[],[]},
{'^',[],[0]}]}]},
{'==',[],
[{{'.',[],[{'&',[],[2]},assigned_type]},[],[]},
{'^',[],[1]}]}]},
{'==',[],
[{{'.',[],[{'&',[],[2]},mx_version]},[],[]},
{'^',[],[2]}]}]},
file =>
<<"/Users/whoever/elixir/my_app/deps/ecto/lib/ecto/association.ex">>,
line => 239,params => nil},
params => nil,prefix => nil,qual => inner,
source =>
{<<"mx_ref_man_claimables">>,
'Elixir.MeasureLibrary.RefMan.Claim'}},
#{'__struct__' => 'Elixir.Ecto.Query.JoinExpr',as => nil,
assoc => nil,
file =>
<<"/Users/whoever/elixir/my_app/deps/ecto/lib/ecto/association.ex">>,
hints => [],ix => 1,line => 239,
on =>
#{'__struct__' => 'Elixir.Ecto.Query.QueryExpr',
expr =>
{'==',[],
[{{'.',[],[{'&',[],[2]},assigned_id]},[],[]},
{{'.',[],[{'&',[],[1]},id]},[],[]}]},
file =>
<<"/Users/whoever/elixir/my_app/deps/ecto/lib/ecto/association.ex">>,
line => 239,params => nil},
params => nil,prefix => nil,qual => inner,
source =>
{<<"mx_ref_man_named_types">>,
'Elixir.MeasureLibrary.RefMan.NamedType'}}],
limit => nil,lock => nil,offset => nil,order_bys => [],
prefix => nil,preloads => [],
select =>
#{'__struct__' => 'Elixir.Ecto.Query.SelectExpr',
expr => {'&',[],[0]},
fields =>
[{{'.',[],[{'&',[],[0]},id]},[],[]},
...],
file =>
<<"/Users/whoever/elixir/my_app/deps/ecto/lib/ecto/query/planner.ex">>,
line => 912,params => nil,take => #{}},
sources =>
{{<<"metrics">>,'Elixir.MeasureLibrary.Metrics.Metric',nil},
{<<"mx_ref_man_named_types">>,
'Elixir.MeasureLibrary.RefMan.NamedType',<<"rm_dba">>},
{<<"mx_ref_man_claimables">>,
'Elixir.MeasureLibrary.RefMan.Claim',<<"rm_dba">>}},
updates => [],
wheres =>
[#{'__struct__' => 'Elixir.Ecto.Query.BooleanExpr',
expr =>
{in,[],
[{{'.',[],[{'&',[],[1]},id]},[],[]},{'^',[],[3,2]}]},
file => <<"iex">>,line => 5,op => 'and',params => nil,
subqueries => []}],
windows => [],with_ctes => nil}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment