Function(
Function {
head: Destructured(
FunctionHeadDestructured {
ellipsis: false,
identifier: None,
arguments: [
FunctionHeadDestructuredArgument {
identifier: "pkgs",
default: Some(
FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "import",
span: Span {
start: Position {
line: 1,
column: 11,
},
end: Position {
line: 1,
column: 17,
},
},
},
),
arguments: [
Path(
Path {
parts: [
Raw(
PartRaw {
content: "../..",
span: Span {
start: Position {
line: 1,
column: 18,
},
end: Position {
line: 1,
column: 23,
},
},
},
),
],
span: Span {
start: Position {
line: 1,
column: 18,
},
end: Position {
line: 1,
column: 23,
},
},
},
),
Map(
Map {
recursive: false,
bindings: [],
span: Span {
start: Position {
line: 1,
column: 24,
},
end: Position {
line: 1,
column: 26,
},
},
},
),
],
},
),
),
},
FunctionHeadDestructuredArgument {
identifier: "nixpkgs",
default: Some(
Map(
Map {
recursive: false,
bindings: [],
span: Span {
start: Position {
line: 1,
column: 39,
},
end: Position {
line: 1,
column: 42,
},
},
},
),
),
},
],
},
),
body: LetIn(
LetIn {
bindings: [
Inherit(
BindingInherit {
from: Some(
Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 3,
column: 12,
},
end: Position {
line: 3,
column: 16,
},
},
},
),
),
attributes: [
Raw(
PartRaw {
content: "lib",
span: Span {
start: Position {
line: 3,
column: 18,
},
end: Position {
line: 3,
column: 21,
},
},
},
),
],
span: Span {
start: Position {
line: 2,
column: 4,
},
end: Position {
line: 3,
column: 22,
},
},
},
),
Inherit(
BindingInherit {
from: Some(
Identifier(
Identifier {
id: "lib",
span: Span {
start: Position {
line: 4,
column: 12,
},
end: Position {
line: 4,
column: 15,
},
},
},
),
),
attributes: [
Raw(
PartRaw {
content: "hasPrefix",
span: Span {
start: Position {
line: 4,
column: 17,
},
end: Position {
line: 4,
column: 26,
},
},
},
),
Raw(
PartRaw {
content: "removePrefix",
span: Span {
start: Position {
line: 4,
column: 27,
},
end: Position {
line: 4,
column: 39,
},
},
},
),
],
span: Span {
start: Position {
line: 2,
column: 4,
},
end: Position {
line: 4,
column: 40,
},
},
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "locationsXml",
span: Span {
start: Position {
line: 6,
column: 3,
},
end: Position {
line: 6,
column: 15,
},
},
},
),
],
to: FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "import",
span: Span {
start: Position {
line: 6,
column: 18,
},
end: Position {
line: 6,
column: 24,
},
},
},
),
arguments: [
Path(
Path {
parts: [
Raw(
PartRaw {
content: "./lib-function-locations.nix",
span: Span {
start: Position {
line: 6,
column: 25,
},
end: Position {
line: 6,
column: 53,
},
},
},
),
],
span: Span {
start: Position {
line: 6,
column: 25,
},
end: Position {
line: 6,
column: 53,
},
},
},
),
Map(
Map {
recursive: false,
bindings: [
Inherit(
BindingInherit {
from: None,
attributes: [
Raw(
PartRaw {
content: "pkgs",
span: Span {
start: Position {
line: 6,
column: 64,
},
end: Position {
line: 6,
column: 68,
},
},
},
),
Raw(
PartRaw {
content: "nixpkgs",
span: Span {
start: Position {
line: 6,
column: 69,
},
end: Position {
line: 6,
column: 76,
},
},
},
),
],
span: Span {
start: Position {
line: 6,
column: 55,
},
end: Position {
line: 6,
column: 77,
},
},
},
),
],
span: Span {
start: Position {
line: 6,
column: 54,
},
end: Position {
line: 6,
column: 79,
},
},
},
),
],
},
),
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "functionDocs",
span: Span {
start: Position {
line: 7,
column: 3,
},
end: Position {
line: 7,
column: 15,
},
},
},
),
],
to: FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "import",
span: Span {
start: Position {
line: 7,
column: 18,
},
end: Position {
line: 7,
column: 24,
},
},
},
),
arguments: [
Path(
Path {
parts: [
Raw(
PartRaw {
content: "./lib-function-docs.nix",
span: Span {
start: Position {
line: 7,
column: 25,
},
end: Position {
line: 7,
column: 48,
},
},
},
),
],
span: Span {
start: Position {
line: 7,
column: 25,
},
end: Position {
line: 7,
column: 48,
},
},
},
),
Map(
Map {
recursive: false,
bindings: [
Inherit(
BindingInherit {
from: None,
attributes: [
Raw(
PartRaw {
content: "locationsXml",
span: Span {
start: Position {
line: 7,
column: 59,
},
end: Position {
line: 7,
column: 71,
},
},
},
),
Raw(
PartRaw {
content: "pkgs",
span: Span {
start: Position {
line: 7,
column: 72,
},
end: Position {
line: 7,
column: 76,
},
},
},
),
],
span: Span {
start: Position {
line: 7,
column: 50,
},
end: Position {
line: 7,
column: 77,
},
},
},
),
],
span: Span {
start: Position {
line: 7,
column: 49,
},
end: Position {
line: 7,
column: 79,
},
},
},
),
],
},
),
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "version",
span: Span {
start: Position {
line: 8,
column: 3,
},
end: Position {
line: 8,
column: 10,
},
},
},
),
],
to: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 8,
column: 13,
},
end: Position {
line: 8,
column: 17,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "lib",
span: Span {
start: Position {
line: 8,
column: 18,
},
end: Position {
line: 8,
column: 21,
},
},
},
),
Raw(
PartRaw {
content: "version",
span: Span {
start: Position {
line: 8,
column: 22,
},
end: Position {
line: 8,
column: 29,
},
},
},
),
],
default: None,
},
),
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "epub-xsl",
span: Span {
start: Position {
line: 10,
column: 3,
},
end: Position {
line: 10,
column: 11,
},
},
},
),
],
to: FunctionApplication(
FunctionApplication {
function: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 10,
column: 14,
},
end: Position {
line: 10,
column: 18,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "writeText",
span: Span {
start: Position {
line: 10,
column: 19,
},
end: Position {
line: 10,
column: 28,
},
},
},
),
],
default: None,
},
),
arguments: [
String(
String_ {
parts: [
Raw(
PartRaw {
content: "epub.xsl",
span: Span {
start: Position {
line: 10,
column: 30,
},
end: Position {
line: 10,
column: 38,
},
},
},
),
],
span: Span {
start: Position {
line: 10,
column: 29,
},
end: Position {
line: 10,
column: 39,
},
},
},
),
IndentedString(
IndentedString {
parts: [
Raw(
PartRaw {
content: "\n\n \n \n\n",
span: Span {
start: Position {
line: 11,
column: 1,
},
end: Position {
line: 18,
column: 3,
},
},
},
),
],
span: Span {
start: Position {
line: 10,
column: 40,
},
end: Position {
line: 18,
column: 5,
},
},
},
),
],
},
),
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "xhtml-xsl",
span: Span {
start: Position {
line: 20,
column: 3,
},
end: Position {
line: 20,
column: 12,
},
},
},
),
],
to: FunctionApplication(
FunctionApplication {
function: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 20,
column: 15,
},
end: Position {
line: 20,
column: 19,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "writeText",
span: Span {
start: Position {
line: 20,
column: 20,
},
end: Position {
line: 20,
column: 29,
},
},
},
),
],
default: None,
},
),
arguments: [
String(
String_ {
parts: [
Raw(
PartRaw {
content: "xhtml.xsl",
span: Span {
start: Position {
line: 20,
column: 31,
},
end: Position {
line: 20,
column: 40,
},
},
},
),
],
span: Span {
start: Position {
line: 20,
column: 30,
},
end: Position {
line: 20,
column: 41,
},
},
},
),
IndentedString(
IndentedString {
parts: [
Raw(
PartRaw {
content: "\n\n \n \n\n",
span: Span {
start: Position {
line: 21,
column: 1,
},
end: Position {
line: 28,
column: 3,
},
},
},
),
],
span: Span {
start: Position {
line: 20,
column: 42,
},
end: Position {
line: 28,
column: 5,
},
},
},
),
],
},
),
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "optionsDoc",
span: Span {
start: Position {
line: 32,
column: 3,
},
end: Position {
line: 32,
column: 13,
},
},
},
),
],
to: FunctionApplication(
FunctionApplication {
function: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 32,
column: 16,
},
end: Position {
line: 32,
column: 20,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "nixosOptionsDoc",
span: Span {
start: Position {
line: 32,
column: 21,
},
end: Position {
line: 32,
column: 36,
},
},
},
),
],
default: None,
},
),
arguments: [
Map(
Map {
recursive: false,
bindings: [
Inherit(
BindingInherit {
from: Some(
FunctionApplication(
FunctionApplication {
function: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 33,
column: 14,
},
end: Position {
line: 33,
column: 18,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "lib",
span: Span {
start: Position {
line: 33,
column: 19,
},
end: Position {
line: 33,
column: 22,
},
},
},
),
Raw(
PartRaw {
content: "evalModules",
span: Span {
start: Position {
line: 33,
column: 23,
},
end: Position {
line: 33,
column: 34,
},
},
},
),
],
default: None,
},
),
arguments: [
Map(
Map {
recursive: false,
bindings: [
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "modules",
span: Span {
start: Position {
line: 33,
column: 37,
},
end: Position {
line: 33,
column: 44,
},
},
},
),
],
to: List(
List {
elements: [
Path(
Path {
parts: [
Raw(
PartRaw {
content: "../../pkgs/top-level/config.nix",
span: Span {
start: Position {
line: 33,
column: 49,
},
end: Position {
line: 33,
column: 80,
},
},
},
),
],
span: Span {
start: Position {
line: 33,
column: 49,
},
end: Position {
line: 33,
column: 80,
},
},
},
),
],
span: Span {
start: Position {
line: 33,
column: 47,
},
end: Position {
line: 33,
column: 82,
},
},
},
),
},
),
],
span: Span {
start: Position {
line: 33,
column: 35,
},
end: Position {
line: 33,
column: 85,
},
},
},
),
],
},
),
),
attributes: [
Raw(
PartRaw {
content: "options",
span: Span {
start: Position {
line: 33,
column: 87,
},
end: Position {
line: 33,
column: 94,
},
},
},
),
],
span: Span {
start: Position {
line: 32,
column: 38,
},
end: Position {
line: 33,
column: 95,
},
},
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "documentType",
span: Span {
start: Position {
line: 34,
column: 5,
},
end: Position {
line: 34,
column: 17,
},
},
},
),
],
to: String(
String_ {
parts: [
Raw(
PartRaw {
content: "none",
span: Span {
start: Position {
line: 34,
column: 21,
},
end: Position {
line: 34,
column: 25,
},
},
},
),
],
span: Span {
start: Position {
line: 34,
column: 20,
},
end: Position {
line: 34,
column: 26,
},
},
},
),
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "transformOptions",
span: Span {
start: Position {
line: 35,
column: 5,
},
end: Position {
line: 35,
column: 21,
},
},
},
),
],
to: Function(
Function {
head: Simple(
FunctionHeadSimple {
identifier: "opt",
},
),
body: BinaryOperation(
BinaryOperation {
left: Identifier(
Identifier {
id: "opt",
span: Span {
start: Position {
line: 36,
column: 7,
},
end: Position {
line: 36,
column: 10,
},
},
},
),
operator: Update,
right: Map(
Map {
recursive: false,
bindings: [
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "declarations",
span: Span {
start: Position {
line: 37,
column: 9,
},
end: Position {
line: 37,
column: 21,
},
},
},
),
],
to: FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "map",
span: Span {
start: Position {
line: 38,
column: 11,
},
end: Position {
line: 38,
column: 14,
},
},
},
),
arguments: [
Function(
Function {
head: Simple(
FunctionHeadSimple {
identifier: "decl",
},
),
body: IfThenElse(
IfThenElse {
predicate: FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "hasPrefix",
span: Span {
start: Position {
line: 40,
column: 18,
},
end: Position {
line: 40,
column: 27,
},
},
},
),
arguments: [
FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "toString",
span: Span {
start: Position {
line: 40,
column: 29,
},
end: Position {
line: 40,
column: 37,
},
},
},
),
arguments: [
Path(
Path {
parts: [
Raw(
PartRaw {
content: "../..",
span: Span {
start: Position {
line: 40,
column: 38,
},
end: Position {
line: 40,
column: 43,
},
},
},
),
],
span: Span {
start: Position {
line: 40,
column: 38,
},
end: Position {
line: 40,
column: 43,
},
},
},
),
],
},
),
FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "toString",
span: Span {
start: Position {
line: 40,
column: 46,
},
end: Position {
line: 40,
column: 54,
},
},
},
),
arguments: [
Identifier(
Identifier {
id: "decl",
span: Span {
start: Position {
line: 40,
column: 55,
},
end: Position {
line: 40,
column: 59,
},
},
},
),
],
},
),
],
},
),
then: LetIn(
LetIn {
bindings: [
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "subpath",
span: Span {
start: Position {
line: 42,
column: 21,
},
end: Position {
line: 42,
column: 28,
},
},
},
),
],
to: FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "removePrefix",
span: Span {
start: Position {
line: 42,
column: 31,
},
end: Position {
line: 42,
column: 43,
},
},
},
),
arguments: [
String(
String_ {
parts: [
Raw(
PartRaw {
content: "/",
span: Span {
start: Position {
line: 42,
column: 45,
},
end: Position {
line: 42,
column: 46,
},
},
},
),
],
span: Span {
start: Position {
line: 42,
column: 44,
},
end: Position {
line: 42,
column: 47,
},
},
},
),
FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "removePrefix",
span: Span {
start: Position {
line: 42,
column: 49,
},
end: Position {
line: 42,
column: 61,
},
},
},
),
arguments: [
FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "toString",
span: Span {
start: Position {
line: 42,
column: 63,
},
end: Position {
line: 42,
column: 71,
},
},
},
),
arguments: [
Path(
Path {
parts: [
Raw(
PartRaw {
content: "../..",
span: Span {
start: Position {
line: 42,
column: 72,
},
end: Position {
line: 42,
column: 77,
},
},
},
),
],
span: Span {
start: Position {
line: 42,
column: 72,
},
end: Position {
line: 42,
column: 77,
},
},
},
),
],
},
),
FunctionApplication(
FunctionApplication {
function: Identifier(
Identifier {
id: "toString",
span: Span {
start: Position {
line: 42,
column: 80,
},
end: Position {
line: 42,
column: 88,
},
},
},
),
arguments: [
Identifier(
Identifier {
id: "decl",
span: Span {
start: Position {
line: 42,
column: 89,
},
end: Position {
line: 42,
column: 93,
},
},
},
),
],
},
),
],
},
),
],
},
),
},
),
],
target: Map(
Map {
recursive: false,
bindings: [
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "url",
span: Span {
start: Position {
line: 43,
column: 22,
},
end: Position {
line: 43,
column: 25,
},
},
},
),
],
to: String(
String_ {
parts: [
Raw(
PartRaw {
content: "https://github.com/NixOS/nixpkgs/blob/master/",
span: Span {
start: Position {
line: 43,
column: 29,
},
end: Position {
line: 43,
column: 84,
},
},
},
),
Interpolation(
PartInterpolation {
expression: Identifier(
Identifier {
id: "subpath",
span: Span {
start: Position {
line: 43,
column: 76,
},
end: Position {
line: 43,
column: 83,
},
},
},
),
},
),
],
span: Span {
start: Position {
line: 43,
column: 28,
},
end: Position {
line: 43,
column: 85,
},
},
},
),
},
),
KeyValue(
BindingKeyValue {
from: [
Raw(
PartRaw {
content: "name",
span: Span {
start: Position {
line: 43,
column: 87,
},
end: Position {
line: 43,
column: 91,
},
},
},
),
],
to: Identifier(
Identifier {
id: "subpath",
span: Span {
start: Position {
line: 43,
column: 94,
},
end: Position {
line: 43,
column: 101,
},
},
},
),
},
),
],
span: Span {
start: Position {
line: 43,
column: 20,
},
end: Position {
line: 43,
column: 104,
},
},
},
),
span: Span {
start: Position {
line: 42,
column: 17,
},
end: Position {
line: 43,
column: 104,
},
},
},
),
else_: Identifier(
Identifier {
id: "decl",
span: Span {
start: Position {
line: 44,
column: 20,
},
end: Position {
line: 44,
column: 24,
},
},
},
),
span: Span {
start: Position {
line: 40,
column: 15,
},
end: Position {
line: 44,
column: 24,
},
},
},
),
span: Span {
start: Position {
line: 39,
column: 14,
},
end: Position {
line: 44,
column: 24,
},
},
},
),
PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "opt",
span: Span {
start: Position {
line: 45,
column: 13,
},
end: Position {
line: 45,
column: 16,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "declarations",
span: Span {
start: Position {
line: 45,
column: 17,
},
end: Position {
line: 45,
column: 29,
},
},
},
),
],
default: None,
},
),
],
},
),
},
),
],
span: Span {
start: Position {
line: 36,
column: 14,
},
end: Position {
line: 46,
column: 10,
},
},
},
),
},
),
span: Span {
start: Position {
line: 35,
column: 24,
},
end: Position {
line: 46,
column: 10,
},
},
},
),
},
),
],
span: Span {
start: Position {
line: 32,
column: 37,
},
end: Position {
line: 47,
column: 4,
},
},
},
),
],
},
),
},
),
],
target: FunctionApplication(
FunctionApplication {
function: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 49,
column: 4,
},
end: Position {
line: 49,
column: 8,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "runCommand",
span: Span {
start: Position {
line: 49,
column: 9,
},
end: Position {
line: 49,
column: 19,
},
},
},
),
],
default: None,
},
),
arguments: [
String(
String_ {
parts: [
Raw(
PartRaw {
content: "doc-support",
span: Span {
start: Position {
line: 49,
column: 21,
},
end: Position {
line: 49,
column: 32,
},
},
},
),
],
span: Span {
start: Position {
line: 49,
column: 20,
},
end: Position {
line: 49,
column: 33,
},
},
},
),
Map(
Map {
recursive: false,
bindings: [],
span: Span {
start: Position {
line: 49,
column: 34,
},
end: Position {
line: 49,
column: 36,
},
},
},
),
IndentedString(
IndentedString {
parts: [
Raw(
PartRaw {
content: "mkdir result\n(\n cd result\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 54,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: Identifier(
Identifier {
id: "locationsXml",
span: Span {
start: Position {
line: 54,
column: 13,
},
end: Position {
line: 54,
column: 25,
},
},
},
),
},
),
Raw(
PartRaw {
content: " ./function-locations.xml\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 55,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: Identifier(
Identifier {
id: "functionDocs",
span: Span {
start: Position {
line: 55,
column: 13,
},
end: Position {
line: 55,
column: 25,
},
},
},
),
},
),
Raw(
PartRaw {
content: " ./function-docs\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 56,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "optionsDoc",
span: Span {
start: Position {
line: 56,
column: 13,
},
end: Position {
line: 56,
column: 23,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "optionsDocBook",
span: Span {
start: Position {
line: 56,
column: 24,
},
end: Position {
line: 56,
column: 38,
},
},
},
),
],
default: None,
},
),
},
),
Raw(
PartRaw {
content: " ./config-options.docbook.xml\n\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 58,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 58,
column: 13,
},
end: Position {
line: 58,
column: 17,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "docbook5",
span: Span {
start: Position {
line: 58,
column: 18,
},
end: Position {
line: 58,
column: 26,
},
},
},
),
],
default: None,
},
),
},
),
Raw(
PartRaw {
content: "/xml/rng/docbook/docbook.rng ./docbook.rng\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 59,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 59,
column: 13,
},
end: Position {
line: 59,
column: 17,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "docbook_xsl_ns",
span: Span {
start: Position {
line: 59,
column: 18,
},
end: Position {
line: 59,
column: 32,
},
},
},
),
],
default: None,
},
),
},
),
Raw(
PartRaw {
content: "/xml/xsl ./xsl\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 60,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: Identifier(
Identifier {
id: "epub-xsl",
span: Span {
start: Position {
line: 60,
column: 13,
},
end: Position {
line: 60,
column: 21,
},
},
},
),
},
),
Raw(
PartRaw {
content: " ./epub.xsl\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 61,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: Identifier(
Identifier {
id: "xhtml-xsl",
span: Span {
start: Position {
line: 61,
column: 13,
},
end: Position {
line: 61,
column: 22,
},
},
},
),
},
),
Raw(
PartRaw {
content: " ./xhtml.xsl\n\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 63,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: Path(
Path {
parts: [
Raw(
PartRaw {
content: "../../nixos/doc/xmlformat.conf",
span: Span {
start: Position {
line: 63,
column: 13,
},
end: Position {
line: 63,
column: 43,
},
},
},
),
],
span: Span {
start: Position {
line: 63,
column: 13,
},
end: Position {
line: 63,
column: 43,
},
},
},
),
},
),
Raw(
PartRaw {
content: " ./xmlformat.conf\n ln -s ",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 64,
column: 11,
},
},
},
),
Interpolation(
PartInterpolation {
expression: PropertyAccess(
PropertyAccess {
expression: Identifier(
Identifier {
id: "pkgs",
span: Span {
start: Position {
line: 64,
column: 13,
},
end: Position {
line: 64,
column: 17,
},
},
},
),
attribute_path: [
Raw(
PartRaw {
content: "documentation-highlighter",
span: Span {
start: Position {
line: 64,
column: 18,
},
end: Position {
line: 64,
column: 43,
},
},
},
),
],
default: None,
},
),
},
),
Raw(
PartRaw {
content: " ./highlightjs\n\n echo -n \"",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 66,
column: 14,
},
},
},
),
Interpolation(
PartInterpolation {
expression: Identifier(
Identifier {
id: "version",
span: Span {
start: Position {
line: 66,
column: 16,
},
end: Position {
line: 66,
column: 23,
},
},
},
),
},
),
Raw(
PartRaw {
content: "\" > ./version\n)\nmv result $out\n",
span: Span {
start: Position {
line: 51,
column: 1,
},
end: Position {
line: 69,
column: 1,
},
},
},
),
],
span: Span {
start: Position {
line: 50,
column: 1,
},
end: Position {
line: 69,
column: 3,
},
},
},
),
],
},
),
span: Span {
start: Position {
line: 2,
column: 1,
},
end: Position {
line: 69,
column: 3,
},
},
},
),
span: Span {
start: Position {
line: 1,
column: 1,
},
end: Position {
line: 69,
column: 3,
},
},
},
)