Você não pode selecionar mais de 25 tópicos
Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
|
- Ast_Node* built_in_add(Ast_Node* operands) {
- double sum = 0;
- while (operands->type == Ast_Node_Type_Cons_Cell) {
- // TODO(Felix): assert type
- sum += operands->value.cons_cell->first->value.number->value;
- operands = operands->value.cons_cell->rest;
- }
-
- return create_ast_node_number(sum);
- }
-
- Ast_Node* built_in_substract(Ast_Node* operands) {
- double diff = operands->value.cons_cell->first->value.number->value;
- operands = operands->value.cons_cell->rest;
- while (operands->type == Ast_Node_Type_Cons_Cell) {
- // TODO(Felix): assert type
- diff -= operands->value.cons_cell->first->value.number->value;
- operands = operands->value.cons_cell->rest;
- }
- return create_ast_node_number(diff);
- }
|