public Function(string name, Tree.Embedding embedding, IEnumerable <Cdn.FunctionArgument> customArguments, bool canBeOverridden) : this(name, embedding.Expression, embedding.Arguments) { d_embedding = embedding; d_canBeOverridden = canBeOverridden; if (customArguments != null) { d_customArguments = new List <Cdn.FunctionArgument>(customArguments); } }
public Loop(Program program, DataTable indextable, Tree.Embedding embedding, Function function) { d_function = function; d_embedding = embedding; d_items = new List <Item>(); d_indextable = indextable; d_program = program; // Create expression d_expression = (Tree.Node)d_embedding.Expression.Clone(); d_expression.Instruction = new Instructions.Function(d_function); // Generate mapping d_mapping = new Dictionary <Tree.NodePath, object>(); }
public Function(string name, Tree.Embedding embedding) : this(name, embedding, null, false) { d_embedding = embedding; }
public Instance(Tree.Embedding prototype, IEnumerable <ulong> embeddedIds, Instruction originalInstruction) { d_prototype = prototype; d_embeddedIds = new List <ulong>(embeddedIds); d_originalInstruction = originalInstruction; }
private int CompareEmbeddings(Tree.Embedding a, Tree.Embedding b) { return(Score(a).CompareTo(Score(b))); }
private int Score(Tree.Embedding embedding) { return(-1 * embedding.InstancesCount * embedding.Expression.Descendants.Length); }