Format examples in docs (#7378)
Signed-off-by: Nick Cameron <nrc@ncameron.org>
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -41,8 +41,19 @@ assert(
|
|||||||
```kcl
|
```kcl
|
||||||
n = 10
|
n = 10
|
||||||
assert(n, isEqualTo = 10)
|
assert(n, isEqualTo = 10)
|
||||||
assert(n, isGreaterThanOrEqual = 0, isLessThan = 100, error = "number should be between 0 and 100")
|
assert(
|
||||||
assert(1.0000000000012, isEqualTo = 1, tolerance = 0.0001, error = "number should be almost exactly 1")
|
n,
|
||||||
|
isGreaterThanOrEqual = 0,
|
||||||
|
isLessThan = 100,
|
||||||
|
error = "number should be between 0 and 100",
|
||||||
|
)
|
||||||
|
assert(
|
||||||
|
1.0000000000012,
|
||||||
|
isEqualTo = 1,
|
||||||
|
tolerance = 0.0001,
|
||||||
|
error = "number should be almost exactly 1",
|
||||||
|
)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -29,6 +29,7 @@ assertIs(
|
|||||||
```kcl
|
```kcl
|
||||||
kclIsFun = true
|
kclIsFun = true
|
||||||
assertIs(kclIsFun)
|
assertIs(kclIsFun)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -29,14 +29,12 @@ Consider using `atan2()` instead for the true inverse of tangent.
|
|||||||
```kcl
|
```kcl
|
||||||
sketch001 = startSketchOn(XZ)
|
sketch001 = startSketchOn(XZ)
|
||||||
|> startProfile(at = [0, 0])
|
|> startProfile(at = [0, 0])
|
||||||
|> angledLine(
|
|> angledLine(angle = atan(1.25), length = 20)
|
||||||
angle = atan(1.25),
|
|
||||||
length = 20,
|
|
||||||
)
|
|
||||||
|> yLine(endAbsolute = 0)
|
|> yLine(endAbsolute = 0)
|
||||||
|> close()
|
|> close()
|
||||||
|
|
||||||
extrude001 = extrude(sketch001, length = 5)
|
extrude001 = extrude(sketch001, length = 5)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -32,6 +32,7 @@ legAngX(
|
|||||||
|
|
||||||
```kcl
|
```kcl
|
||||||
legAngX(hypotenuse = 5, leg = 3)
|
legAngX(hypotenuse = 5, leg = 3)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -32,6 +32,7 @@ legAngY(
|
|||||||
|
|
||||||
```kcl
|
```kcl
|
||||||
legAngY(hypotenuse = 5, leg = 3)
|
legAngY(hypotenuse = 5, leg = 3)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -32,6 +32,7 @@ legLen(
|
|||||||
|
|
||||||
```kcl
|
```kcl
|
||||||
legLen(hypotenuse = 5, leg = 3)
|
legLen(hypotenuse = 5, leg = 3)
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -21,6 +21,7 @@ acceptAnything(42)
|
|||||||
acceptAnything('hello')
|
acceptAnything('hello')
|
||||||
acceptAnything(XY)
|
acceptAnything(XY)
|
||||||
acceptAnything([0, 1, 2])
|
acceptAnything([0, 1, 2])
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,6 +15,7 @@ Strings may be delimited using either single or double quotes.
|
|||||||
```kcl
|
```kcl
|
||||||
"hello,"
|
"hello,"
|
||||||
'world!'
|
'world!'
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
@ -173,7 +173,11 @@ fn generate_example(index: usize, src: &str, props: &ExampleProperties, file_nam
|
|||||||
return None;
|
return None;
|
||||||
}
|
}
|
||||||
|
|
||||||
let content = if props.inline { "" } else { src };
|
let content = if props.inline {
|
||||||
|
String::new()
|
||||||
|
} else {
|
||||||
|
crate::unparser::fmt(src).unwrap()
|
||||||
|
};
|
||||||
|
|
||||||
let image_base64 = if props.norun {
|
let image_base64 = if props.norun {
|
||||||
String::new()
|
String::new()
|
||||||
|
@ -48,7 +48,7 @@ pub(super) struct GlobalState {
|
|||||||
pub mod_loader: ModuleLoader,
|
pub mod_loader: ModuleLoader,
|
||||||
/// Errors and warnings.
|
/// Errors and warnings.
|
||||||
pub errors: Vec<CompilationError>,
|
pub errors: Vec<CompilationError>,
|
||||||
#[allow(dead_code)]
|
#[cfg_attr(not(feature = "artifact-graph"), allow(dead_code))]
|
||||||
pub artifacts: ArtifactState,
|
pub artifacts: ArtifactState,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,16 +1,26 @@
|
|||||||
use std::fmt::Write;
|
use std::fmt::Write;
|
||||||
|
|
||||||
use crate::parsing::{
|
use crate::{
|
||||||
|
parsing::{
|
||||||
ast::types::{
|
ast::types::{
|
||||||
Annotation, ArrayExpression, ArrayRangeExpression, AscribedExpression, BinaryExpression, BinaryOperator,
|
Annotation, ArrayExpression, ArrayRangeExpression, AscribedExpression, BinaryExpression, BinaryOperator,
|
||||||
BinaryPart, BodyItem, CallExpressionKw, CommentStyle, DefaultParamVal, Expr, FormatOptions, FunctionExpression,
|
BinaryPart, BodyItem, CallExpressionKw, CommentStyle, DefaultParamVal, Expr, FormatOptions,
|
||||||
IfExpression, ImportSelector, ImportStatement, ItemVisibility, LabeledArg, Literal, LiteralIdentifier,
|
FunctionExpression, IfExpression, ImportSelector, ImportStatement, ItemVisibility, LabeledArg, Literal,
|
||||||
LiteralValue, MemberExpression, Node, NonCodeNode, NonCodeValue, ObjectExpression, Parameter, PipeExpression,
|
LiteralIdentifier, LiteralValue, MemberExpression, Node, NonCodeNode, NonCodeValue, ObjectExpression,
|
||||||
Program, TagDeclarator, TypeDeclaration, UnaryExpression, VariableDeclaration, VariableKind,
|
Parameter, PipeExpression, Program, TagDeclarator, TypeDeclaration, UnaryExpression, VariableDeclaration,
|
||||||
|
VariableKind,
|
||||||
},
|
},
|
||||||
deprecation, DeprecationKind, PIPE_OPERATOR,
|
deprecation, DeprecationKind, PIPE_OPERATOR,
|
||||||
|
},
|
||||||
|
KclError, ModuleId,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#[allow(dead_code)]
|
||||||
|
pub fn fmt(input: &str) -> Result<String, KclError> {
|
||||||
|
let program = crate::parsing::parse_str(input, ModuleId::default()).parse_errs_as_err()?;
|
||||||
|
Ok(program.recast(&Default::default(), 0))
|
||||||
|
}
|
||||||
|
|
||||||
impl Program {
|
impl Program {
|
||||||
pub fn recast(&self, options: &FormatOptions, indentation_level: usize) -> String {
|
pub fn recast(&self, options: &FormatOptions, indentation_level: usize) -> String {
|
||||||
let indentation = options.get_indentation(indentation_level);
|
let indentation = options.get_indentation(indentation_level);
|
||||||
|
Reference in New Issue
Block a user