Table of Contents

Class FanucMacroCall

Namespace
Hi.NcParsers.Keywords
Assembly
HiMech.dll

One-shot custom-macro-call record written by FanucMacroCallSyntax. Lives on both the G65 host block (the caller) and every inlined block of the macro body — so a cache-dump reader can land on any block inside the macro and immediately see “this block belongs to a G65 call of FileName with these argument bindings” without back-walking to find the host.

Each inlined block additionally carries the resolved Vars.Local #1-#26 bindings derived from Args (see FanucMacroArgumentMap), so LocalVariableLookup resolves macro args in a single-block lookup. Frame isolation is structural: caller blocks never have Vars.Local written, so after the macro body ends, the next caller block reads null for any #1-#26 without any explicit frame marker.

public class FanucMacroCall
Inheritance
FanucMacroCall
Inherited Members
Extension Methods

Properties

Args

Argument-letter → numeric-value map captured from the call line (e.g., G65 P9100 A1.5 B2.{ “A”: 1.5, “B”: 2.0 }). The matching Vars.Local bindings on each inlined block are derived from this via the Type-I argument-letter map (FanucMacroArgumentMap).

public JsonObject Args { get; set; }

Property Value

JsonObject

FileName

Bare matched file name (e.g. “O9100.NC”). The resolver tries several fallback patterns (FilenamePatterns); this records which one hit. JSON-portable across environments — the folder context lives on the host's SubProgramFolderConfig dependency, not encoded here.

public string FileName { get; set; }

Property Value

string

L

Repeat count from the L parameter; defaults to 1 when absent.

public int L { get; set; }

Property Value

int

P

Macro program number from the P parameter (e.g., 9100 for O9100).

public int P { get; set; }

Property Value

int

Term

Triggering keyword (always “G65”).

public string Term { get; set; }

Property Value

string