void switch_formatSource(caValue* source, Term* term) { format_name_binding(source, term); append_phrase(source, "switch ", term, name_Keyword); format_source_for_input(source, term, 0); format_branch_source(source, nested_contents(term), term); }
void section_block_formatSource(caValue* source, Term* term) { format_name_binding(source, term); append_phrase(source, "section", term, sym_None); append_phrase(source, " ", term, sym_Whitespace); format_block_source(source, nested_contents(term), term); }
void format_heading(StyledSource* source, Term* term) { format_name_binding(source, term); append_phrase(source, "for ", term, phrase_type::KEYWORD); append_phrase(source, for_loop_get_iterator_name(term), term, phrase_type::UNDEFINED); append_phrase(source, " in ", term, phrase_type::KEYWORD); format_source_for_input(source, term, 0); }
void formatSource(caValue* source, Term* term) { if (term->boolProp("syntax:brackets", false)) { format_name_binding(source, term); format_source_for_input(source, term, 0); append_phrase(source, "[", term, tok_LBracket); format_source_for_input(source, term, 1); append_phrase(source, "]", term, tok_LBracket); } else { format_term_source_default_formatting(source, term); } }
void get_with_selector__formatSource(caValue* source, Term* term) { Term* selector = term->input(1); if (selector->function != FUNCS.selector) { // Unusual case; bail out with default formatting. format_term_source_default_formatting(source, term); return; } format_name_binding(source, term); format_source_for_input(source, term, 0, "", ""); selector_format_source(source, selector); }
void formatSource(caValue* source, Term* term) { format_name_binding(source, term); Block* contents = nested_contents(term); int index = 0; while (contents->get(index)->function == FUNCS.input) index++; bool firstCase = true; for (; index < contents->length(); index++) { Term* caseTerm = contents->get(index); if (caseTerm->function != FUNCS.case_func) break; if (is_hidden(caseTerm)) continue; append_phrase(source, caseTerm->stringProp("syntax:preWhitespace", ""), caseTerm, tok_Whitespace); if (firstCase) { append_phrase(source, "if ", caseTerm, sym_Keyword); format_source_for_input(source, caseTerm, 0); firstCase = false; } else if (caseTerm->input(0) != NULL) { append_phrase(source, "elif ", caseTerm, sym_Keyword); format_source_for_input(source, caseTerm, 0); } else append_phrase(source, "else", caseTerm, sym_None); // whitespace following the if/elif/else append_phrase(source, caseTerm->stringProp("syntax:lineEnding", ""), caseTerm, tok_Whitespace); format_block_source(source, nested_contents(caseTerm), caseTerm); } }