shields expr completely from the standard Wolfram Language evaluation process, preventing even upvalues associated with expr from being used.
- HoldComplete has attribute HoldAllComplete and performs no operations on its arguments.
- HoldComplete is removed by ReleaseHold. »
- HoldComplete can be inserted as a wrapper by such functions as ToExpression and ReplacePart. »
- HoldComplete is generated by default by MakeExpression.
Examplesopen allclose all
Basic Examples (1)
Properties & Relations (6)
HoldComplete is the standard container with attribute HoldAllComplete:
No form of evaluation control affects an expression with attribute HoldAllComplete:
Substitution still happens inside HoldComplete:
ReleaseHold removes one level of HoldComplete:
Hold is a milder form of HoldComplete that allows for some form of evaluation:
HoldComplete can be used to freeze the result of ToExpression before it is evaluated:
Possible Issues (2)
HoldComplete affects only evaluation; input transformations are still applied:
HoldComplete does not prevent formatting:
Add DisableFormatting to prevent formatting:
Wolfram Research (1996), HoldComplete, Wolfram Language function, https://reference.wolfram.com/language/ref/HoldComplete.html.
Wolfram Language. 1996. "HoldComplete." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/HoldComplete.html.
Wolfram Language. (1996). HoldComplete. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/HoldComplete.html