Example #1
0
 public common_parameter(string name, SemanticTree.parameter_type pt,
                         common_function_node cont_function, concrete_parameter_type conc_par_type, location loc) :
     base(name)
 {
     _par_type                = pt;
     _cont_function           = cont_function;
     _concrete_parameter_type = conc_par_type;
     _loc = loc;
 }
Example #2
0
 public common_parameter(string name, type_node tp, SemanticTree.parameter_type pt,
                         common_function_node cont_function, concrete_parameter_type conc_par_type, expression_node default_value,
                         location loc) :
     base(name, tp)
 {
     _par_type                = pt;
     _cont_function           = cont_function;
     _concrete_parameter_type = conc_par_type;
     _default_value           = default_value;
     _loc = loc;
 }
Example #3
0
        private void make_object_operator(common_type_node ctn, SemanticTree.basic_function_type bas_ft,
                                          string name, type_node ret_type, SemanticTree.parameter_type first_parameter_type)
        {
            parameterArrayList  pars = new parameterArrayList();
            basic_function_node bfn  = new basic_function_node(bas_ft, pars, ret_type);

            bfn.is_overload = true;
            basic_parameter to = new basic_parameter(compiler_string_consts.left_param_name, ctn,
                                                     first_parameter_type, bfn);
            basic_parameter from = new basic_parameter(compiler_string_consts.right_param_name, ctn,
                                                       SemanticTree.parameter_type.value, bfn);

            pars.Add(to);
            pars.Add(from);
            ctn.Scope.AddSymbol(name, new SymbolInfo(bfn));
        }
Example #4
0
        private void make_compiled_object_operator(string name, compiled_type_node tp, SemanticTree.basic_function_type bft,
                                                   SemanticTree.parameter_type first_param_type)
        {
            parameterArrayList  pars = new parameterArrayList();
            basic_function_node bfn  = new basic_function_node(bft, pars, tp);

            bfn.is_overload = true;
            basic_parameter to = new basic_parameter(compiler_string_consts.left_param_name, tp,
                                                     first_param_type, bfn);
            basic_parameter from = new basic_parameter(compiler_string_consts.right_param_name, tp,
                                                       SemanticTree.parameter_type.value, bfn);

            pars.Add(to);
            pars.Add(from);
            tp.add_additional_name(name, new SymbolInfo(bfn));
        }
Example #5
0
 public basic_parameter(string name, type_node type, SemanticTree.parameter_type par_type,
                        basic_function_node cont_function) : base(name, type)
 {
     _cont_function = cont_function;
     _par_type      = par_type;
 }
Example #6
0
 public void SetParameterType(SemanticTree.parameter_type pt)
 {
     _par_type = pt;
 }