MCPcopy Create free account
hub / github.com/git/git / whitespace_rule

Function whitespace_rule

ws.c:82–111  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

80}
81
82unsigned whitespace_rule(struct index_state *istate, const char *pathname)
83{
84 static struct attr_check *attr_whitespace_rule;
85 const char *value;
86
87 if (!attr_whitespace_rule)
88 attr_whitespace_rule = attr_check_initl("whitespace", NULL);
89
90 git_check_attr(istate, pathname, attr_whitespace_rule);
91 value = attr_whitespace_rule->items[0].value;
92 if (ATTR_TRUE(value)) {
93 /* true (whitespace) */
94 unsigned all_rule = ws_tab_width(whitespace_rule_cfg);
95 int i;
96 for (i = 0; i < ARRAY_SIZE(whitespace_rule_names); i++)
97 if (!whitespace_rule_names[i].loosens_error &&
98 !whitespace_rule_names[i].exclude_default)
99 all_rule |= whitespace_rule_names[i].rule_bits;
100 return all_rule;
101 } else if (ATTR_FALSE(value)) {
102 /* false (-whitespace) */
103 return ws_tab_width(whitespace_rule_cfg);
104 } else if (ATTR_UNSET(value)) {
105 /* reset to default (!whitespace) */
106 return whitespace_rule_cfg;
107 } else {
108 /* string */
109 return parse_whitespace_rule(value);
110 }
111}
112
113/* The returned string should be freed by the caller. */
114char *whitespace_error_string(unsigned ws)

Callers 4

parse_chunkFunction · 0.70
emit_rewrite_diffFunction · 0.70
builtin_diffFunction · 0.70
builtin_checkdiffFunction · 0.70

Calls 3

attr_check_initlFunction · 0.85
git_check_attrFunction · 0.85
parse_whitespace_ruleFunction · 0.85

Tested by

no test coverage detected