MCPcopy Create free account
hub / github.com/OpenSees/OpenSees / OPS_SourceCmd

Function OPS_SourceCmd

SRC/tcl/commands.cpp:1223–1263  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1221}
1222
1223int
1224OPS_SourceCmd(
1225 ClientData dummy, /* Not used. */
1226 Tcl_Interp *interp, /* Current interpreter. */
1227 int objc, /* Number of arguments. */
1228 Tcl_Obj *CONST objv[]) /* Argument objects. */
1229{
1230 CONST char *encodingName = NULL;
1231 Tcl_Obj *fileName;
1232
1233 if (objc != 2 && objc !=4) {
1234 Tcl_WrongNumArgs(interp, 1, objv, "?-encoding name? fileName");
1235 return TCL_ERROR;
1236 }
1237
1238 fileName = objv[objc-1];
1239
1240 if (objc == 4) {
1241 static CONST char *options[] = {
1242 "-encoding", NULL
1243 };
1244 int index;
1245
1246 if (TCL_ERROR == Tcl_GetIndexFromObj(interp, objv[1], options,
1247 "option", TCL_EXACT, &index)) {
1248 return TCL_ERROR;
1249 }
1250 encodingName = Tcl_GetString(objv[2]);
1251 }
1252
1253 const char *pwd = getInterpPWD(interp);
1254 const char *fileN = Tcl_GetString(fileName);
1255
1256 simulationInfo.addInputFile(fileN, pwd);
1257
1258#ifndef _TCL85
1259 return Tcl_EvalFile(interp, fileN);
1260#else
1261 return Tcl_FSEvalFileEx(interp, fileName, encodingName);
1262#endif
1263}
1264
1265#ifdef _OPTIMIZATION
1266

Callers

nothing calls this directly

Calls 2

getInterpPWDFunction · 0.70
addInputFileMethod · 0.45

Tested by

no test coverage detected