Releases: magicant/yash-rs
Releases · magicant/yash-rs
yash-fnmatch-1.0.1
[1.0.1] - 2022-10-01
Fixed
- A bug where an
Ast
containing an empty collating symbol or equivalence class in aBracketItem::Atom
was producing a malformed regex rather than returning anError::EmptyCollatingSymbol
.
yash-arith-0.1.0
[0.1.0] - 2022-10-01
Added
- Fundamental items for performing arithmetic expansion
yash-syntax-0.5.0
[0.5.0] - 2022-07-02
This version contains variety of fixes.
Added
parser::lex::Keyword::is_clause_delimiter
parser::lex::Operator::is_clause_delimiter
parser::lex::TokenId::is_clause_delimiter
impl std::error::Error for parser::Error
source::pretty::MessageBase
impl MessageBase for parser::Error
impl<'a, T: MessageBase> From<&'a T> for source::pretty::Message<'a>
Changed
syntax::CommandSubst::content
fromString
toRc<str>
parser::Error
nownon_exhaustive
parser::Error::UnexpectedToken
renamed toInvalidCommandToken
parser::Parser::maybe_compound_list
now returning anInvalidCommandToken
error if the list is delimited by a token that is not a clause delimiter.- Dependency versions
async-trait
0.1.52 → 0.1.56
Removed
impl<'a> From<&'a parser::Error> for source::pretty::Message<'a>
yash-fnmatch-1.0.0
[1.0.0] - 2022-07-02
The first release.
Added
- Fundamental items for pattern matching
Pattern
,Config
,Error
PatternChar
,with_escape
,without_escape
ast
Ast
,Atom
,Bracket
,BracketItem
,BracketAtom
yash-syntax-0.4.0
[0.4.0] - 2022-02-27
This version modifies the definition of source::Location
so it refers to a
range of source code characters rather than a single character.
Added
parser::lex::Lexer::location_range
Changed
source::Location::index: usize
replaced withrange: Range<usize>
- The following functions now taking the
start_index: usize
parameter instead ofopening_location: Location
:parser::lex::Lexer::arithmetic_expansion
parser::lex::Lexer::command_substitution
parser::lex::Lexer::raw_param
parser::lex::WordLexer::braced_param
- The following functions now returning
Result<Option<TextUnit>>
instead ofResult<Result<TextUnit, Location>>
:parser::lex::Lexer::arithmetic_expansion
parser::lex::Lexer::raw_param
parser::lex::WordLexer::braced_param
Removed
parser::lex::PartialHereDoc
source::Location::advance
yash-syntax-0.3.0
[0.3.0] - 2022-02-06
This version simplifies type definitions for the abstract syntax tree (AST); syntax::HereDoc::content
is now wrapped in RefCell
to remove generic type parameters from RedirBody
and other AST types.
Changed
source::Source
nownon_exhaustive
syntax::HereDoc::content
redefined asRefCell<Text>
(previouslyText
)impl From<HereDoc> for RedirBody
replaced withimpl<T: Into<Rc<HereDoc>>> From<T> for RedirBody
parser::Lexer::here_doc_content
now taking a&HereDoc
parameter and returningResult<()>
parser::Parser::memorize_unread_here_doc
now taking anRc<HereDoc>
parameter
Removed
parser::Parser::take_read_here_docs
parser::Fill
parser::MissingHereDoc
- Generic type parameters of AST types
RedirBody
,Redir
,SimpleCommand
,ElifThen
,CaseItem
,CompoundCommand
,FullCompoundCommand
,FunctionDefinition
,Command
,Pipeline
,AndOrList
,Item
,List
in thesyntax
module
yash-syntax-0.2.0
[0.2.0] - 2022-02-03
Previously, source code attribution attached to ASTs was line-oriented. The
attribution now contains a whole fragment of code corresponding to a complete
command.
Added
source_chars
Lexer::pending
Lexer::flush
impl Default for input::Context
Changed
- Items in the
source
module:Line
renamed toCode
Location
's fieldline
renamed tocode
Location
's fieldcolumn
replaced withindex
Code
's fieldvalue
wrapped in theRefCell
Annotation
's fieldlocation
changed to a referenceAnnotation
's fieldcode
addedAnnotation
's methodnew
added
- Items in the
input
module:Result
redefined asResult<String, Error>
(previouslyResult<Code, Error>
)Error
redefined asstd::io::Error
(previously(Location, std::io::Error)
)Context
nownon_exhaustive
Memory::new
no longer taking aSource
parameter
Lexer::new
now requiring thestart_line_number
andsource
parameters- Dependency versions
async-trait
0.1.50 → 0.1.52futures-util
0.3.18 → 0.3.19itertools
0.10.1 → 0.10.3
Removed
Code::enumerate
Lines
lines
yash-quote-1.0.0
[1.0.0] - 2022-02-03
No changes. Just bumping the version number to make the public API stable.
yash-syntax-0.1.0
[0.1.0] - 2021-12-11
Added
- Functionalities to parse POSIX shell scripts
- Alias substitution support
yash-quote-0.1.0
[0.1.0] - 2021-12-11
Added
- The
quote
function